table()
Gilt für: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Die Table()-Funktion verweist auf eine Tabelle, indem der Name als Ausdruck des Typs string
angegeben wird.
Syntax
table(
TableName [,
DataScope])
Erfahren Sie mehr über Syntaxkonventionen.
Parameter
Name | Type | Erforderlich | Beschreibung |
---|---|---|---|
TableName | string |
✔️ | Der Name der Tabelle, auf die verwiesen wird. Der Wert dieses Ausdrucks muss am Punkt des Aufrufs der Funktion konstant sein, was bedeutet, dass er vom Datenkontext nicht variieren kann. |
DataScope | string |
Wird verwendet, um den Tabellenverweis auf Daten entsprechend der Art und Art einzuschränken, wie diese Daten unter die effektive Cacherichtlinie der Tabelle fallen. Wenn dieses Argument verwendet wird, muss es sich um einen der Gültigen Datenbereichswerte handeln. |
Gültige Datenbereichswerte
Wert | Beschreibung |
---|---|
hotcache |
Nur Daten, die als hot cache kategorisiert sind, werden referenziert. |
all |
Auf alle Daten in der Tabelle wird verwiesen. |
default |
Die Standardeinstellung lautet all , außer wenn sie vom Clusteradministrator festgelegt hotcache wurde. |
Gibt zurück
table(T)
gibt Folgendes zurück:
- Daten aus Tabelle T , wenn eine Tabelle mit dem Namen T vorhanden ist.
- Daten, die von Funktion T zurückgegeben werden, wenn eine Tabelle mit dem Namen T nicht vorhanden ist, aber eine Funktion mit dem Namen T vorhanden ist. Funktion T darf keine Argumente annehmen und ein tabellarisches Ergebnis zurückgeben.
- Ein semantischer Fehler wird ausgelöst, wenn keine Tabelle mit dem Namen T und keine Funktion mit dem Namen T vorhanden ist.
Beispiele
Verwenden von Tabelle() für den Zugriff auf die Tabelle der aktuellen Datenbank
table('StormEvents') | count
Ausgabe
Anzahl |
---|
59066 |
Verwenden von "table() inside let"-Anweisungen
Die oben genannte Abfrage kann als abfragedefinierte Funktion (let-Anweisung) umgeschrieben werden, die einen Parameter tableName
empfängt , der an die Table()-Funktion übergeben wird.
let foo = (tableName:string)
{
table(tableName) | count
};
foo('StormEvents')
Ausgabe
Anzahl |
---|
59066 |
Verwenden von "table()" innerhalb von Funktionen
Die gleiche Abfrage wie oben kann neu geschrieben werden, um in einer Funktion zu verwenden, die einen Parameter tableName
empfängt - der an die Table()-Funktion übergeben wird.
.create function foo(tableName:string)
{
table(tableName) | count
};
Hinweis
Solche Funktionen können nur lokal und nicht in der clusterübergreifenden Abfrage verwendet werden.
Use table() with non-constant parameter
Ein Parameter, der keine skalare Konstante ist, kann nicht als Parameter an die table()
Funktion übergeben werden.
Im Folgenden finden Sie ein Beispiel für eine Problemumgehung für diesen Fall.
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')
Ausgabe
x |
---|
2 |