Condividi tramite


table()

Si applica a: ✅Microsoft Fabric✅Azure Esplora dati Azure MonitorMicrosoft Sentinel

La funzione table() fa riferimento a una tabella specificandone il nome come espressione di tipo string.

Sintassi

table(TableName [, DataScope])

Altre informazioni sulle convenzioni di sintassi.

Parametri

Nome Digita Obbligatorio Descrizione
TableName string ✔️ Nome della tabella a cui viene fatto riferimento. Il valore di questa espressione deve essere costante al momento della chiamata alla funzione, ovvero non può variare in base al contesto dati.
DataScope string Usato per limitare il riferimento alla tabella ai dati in base al modo in cui questi dati rientrano nei criteri di cache effettivi della tabella. Se usato, l'argomento effettivo deve essere uno dei valori ambito dati validi.

Valori validi dell'ambito dati

valore Descrizione
hotcache Verrà fatto riferimento solo ai dati classificati come hot cache.
all Verrà fatto riferimento a tutti i dati nella tabella.
default Il valore predefinito è all, tranne se è stato impostato su hotcache dall'amministratore del cluster.

Valori restituiti

table(T) rendiconto:

  • Dati della tabella T se esiste una tabella denominata T .
  • Dati restituiti dalla funzione T se non esiste una tabella denominata T , ma esiste una funzione denominata T . La funzione T non deve accettare argomenti e deve restituire un risultato tabulare.
  • Se non è presente alcuna tabella denominata T e nessuna funzione denominata T, viene generato un errore semantico.

Esempi

Usare table() per accedere alla tabella del database corrente

table('StormEvents') | count

Output

Count
59066

Usare table() all'interno di istruzioni let

La query precedente può essere riscritta come funzione definita da query (istruzione let) che riceve un parametro tableName , che viene passato alla funzione table().

let foo = (tableName:string)
{
    table(tableName) | count
};
foo('StormEvents')

Output

Count
59066

Usare table() all'interno di Funzioni

È possibile riscrivere la stessa query di cui sopra per essere usata in una funzione che riceve un parametro tableName , che viene passato alla funzione table().

.create function foo(tableName:string)
{
    table(tableName) | count
};

Nota

Tali funzioni possono essere usate solo in locale e non nella query tra cluster.

Usare table() con parametro non costante

Un parametro, che non è una stringa costante scalare, non può essere passato come parametro alla table() funzione.

Di seguito è riportato un esempio di soluzione alternativa per questo caso.

let T1 = print x=1;
let T2 = print x=2;
let _choose = (_selector:string)
{
    union
    (T1 | where _selector == 'T1'),
    (T2 | where _selector == 'T2')
};
_choose('T2')

Output

x
2