table()
適用対象: ✅Microsoft Fabric✅Azure データ エクスプローラー✅Azure Monitor✅Microsoft Sentinel
table() 関数は、型 string
の式として名前を指定することで、テーブルを参照します。
構文
table(
TableName [,
DataScope])
構文規則について詳しく知る。
パラメーター
件名 | タイプ | Required | 説明 |
---|---|---|---|
TableName | string |
✔️ | 参照されているテーブルの名前。 この式の値は、関数の呼び出し時点で定数である必要があります。つまり、データ コンテキストによって変化することはできません。 |
DataScope | string |
このデータがテーブルの有効な cache ポリシーに従ってデータへのテーブル参照を制限するために使用。 使用する場合、実際の引数は、 Valid データ スコープ値のいずれかである必要があります。 |
有効なデータ スコープ値
値 | 説明 |
---|---|
hotcache |
ホット キャッシュとして分類されたデータのみが参照されます。 |
all |
テーブル内のすべてのデータが参照されます。 |
default |
クラスター管理者によってhotcache に設定されている場合を除き、既定値はall です。 |
返品
table(T)
が次のように返します。
- テーブル T のデータT という名前のテーブルが存在する場合。
- 関数 T T という名前のテーブルが存在せず、 T という名前の関数が存在する場合に返されるデータ。 関数 T は引数を受け取らなければならず、表形式の結果を返す必要があります。
- T という名前のテーブルがなく、T という名前の関数がない場合、セマンティック エラーが発生します。
例
table() を使用して、現在のデータベースのテーブルにアクセスする
table('StormEvents') | count
出力
カウント |
---|
59066 |
let ステートメント内で table () を使用する
上記のクエリは、table() 関数に渡されるパラメーター tableName
を受け取るクエリ定義関数 (let ステートメント) として書き換えることができます。
let foo = (tableName:string)
{
table(tableName) | count
};
foo('StormEvents')
出力
カウント |
---|
59066 |
関数内で table() を使用する
上記と同じクエリを、パラメーター tableName
を受け取る関数を使用するように書き換えることができます。このパラメーターが table() 関数に渡されます。
.create function foo(tableName:string)
{
table(tableName) | count
};
Note
このような関数はローカルでのみ使用でき、クラスター間のクエリでは使用できません。
定数以外のパラメーターを指定して table() を使用する
スカラー定数文字列ではないパラメーターは、パラメーターとして table()
関数に渡すことはできません。
次に、このような場合の回避策の例を示します。
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')
出力
x |
---|
2 |