- bool: 真偽値 (
true
またはfalse
) を表します。 - int: 整数型を表します。
- long: 長整数型を表します。通常、intよりも大きい値を扱う際に使用されます。
- real: 浮動小数点数型を表します。
- decimal: 10進数型を表します。高精度な小数点数計算に使用されます。
- string: 文字列型を表します。テキストデータを表現するのに使用されます。
- datetime: 日付と時刻の組み合わせを表します。
- timespan: 時間間隔を表します。
- dynamic: 動的な型です。一連のキーと値のペアを持つオブジェクトを表現します。
- guid: GUID(グローバル一意識別子)を表します。
- timeseries: 時系列データ型を表します。特定の時刻またはタイムスタンプと値のペアを含むデータを表現します。
- dynamic array: 動的な型の配列です。複数の動的な型の要素を持つことができます。
// データベース選択
use <データベース名>
// テーブル選択
<テーブル名>
// 全ての列を表示
<テーブル名>
// 特定の列を表示
<テーブル名>
| project <列名1>, <列名2>
// 上位 n 件を表示
<テーブル名>
| top <n>
// 特定の条件を満たす行を表示
<テーブル名>
| where <条件>
// グループごとに集計
<テーブル名>
| summarize <集計関数>(<列名>) by <グループ化する列>
// 日付別に集計
<テーブル名>
| summarize <集計関数>(<列名>) by bin(<日付列>, <時間間隔>)
// グループごとに複数の集計
<テーブル名>
| summarize <集計1> = <集計関数1>(<列名1>), <集計2> = <集計関数2>(<列名2>) by <グループ化する列>
// 特定の列で昇順にソート
<テーブル名>
| order by <列名>
// 特定の列で降順にソート
<テーブル名>
| order by <列名> desc
// 別のテーブルと結合
<テーブル名1>
| join kind=<結合の種類> ( <テーブル名2> ) on <共通の列>
// サブクエリの利用
<外部のクエリ>
| where <列名> in (query <サブクエリ>)
// 現在の日時を取得
now()
// 特定の日付フォーマットに変換
<日付列>
| format_datetime('<書式>')
// 特定の列が値を持つかチェック
<テーブル名>
| where has(<列名>)
// 特定の列に特定の値が含まれるかチェック
<テーブル名>
| where contains(<列名>, '<値>')
// 値が等しいかチェック
<テーブル名>
| where <列名> == <値>
// 値が等しくないかチェック
<テーブル名>
| where <列名> != <値>
// 値が大きいかチェック
<テーブル名>
| where <列名> > <値>
// 値が小さいかチェック
<テーブル名>
| where <列名> < <値>
// 値が以上かチェック
<テーブル名>
| where <列名> >= <値>
// 値が以下かチェック
<テーブル名>
| where <列名> <= <値>
// 数値列を加算
<テーブル名>
| extend <新しい列名> = <数値列1> + <数値列2>
// 数値列を減算
<テーブル名>
| extend <新しい列名> = <数値列1> - <数値列2>
// 数値列を乗算
<テーブル名>
| extend <新しい列名> = <数値列1> * <数値列2>
// 数値列を除算
<テーブル名>
| extend <新しい列名> = <数値列1> / <数値列2>
// 数値列を剰余
<テーブル名>
| extend <新しい列名> = <数値列1> % <数値列2>
// 条件が成り立つ場合に値を返す (Ternary条件演算子)
<テーブル名>
| project <新しい列名> = iif(<条件>, <真の値>, <偽の値>)
// NULLの場合に代替値を設定
<テーブル名>
| extend <新しい列名> = coalesce(<列名>, <代替値>)
// 文字列連結
<テーブル名>
| extend <新しい列名> = strcat(<文字列列1>, <文字列列2>)
// 文字列の長さを取得
<テーブル名>
| extend <新しい列名> = strlen(<文字列列>)
// 文字列を大文字に変換
<テーブル名>
| extend <新しい列名> = toupper(<文字列列>)
// 文字列を小文字に変換
<テーブル名>
| extend <新しい列名> = tolower(<文字列列>)
// 文字列を置換
<テーブル名>
| extend <新しい列名> = replace(<文字列列>, "<置換前>", "<置換後>")
- sum(), avg(), min(), max(), count(), percentile(), stdev(), variance()
-
percentile()
- 説明: データのパーセンタイルを計算します。指定したパーセンタイルでデータを分割し、その値を返します。
- 使用例: 特定の列の中央値や四分位数を計算する
MyTable | summarize Median = percentile(MyColumn, 50), Q1 = percentile(MyColumn, 25)
-
stdev()
- 説明: 指定した列の標本標準偏差(サンプルの偏差)を計算します。データのばらつきや散らばり具合を測定します。
- 使用例: データのばらつきを計算する
MyTable | summarize StandardDeviation = stdev(MyColumn)
-
variance()
- 説明: 指定した列の分散を計算します。データのばらつきや散らばり具合を数値化します。
- 使用例: データの分散を計算する
MyTable | summarize Variance = variance(MyColumn)
- project, extend, filter, distinct, union, join, lookup, sample, parse, evaluate, range
-
extend()
- 説明: クエリ結果に新しい列を追加します。既存の列を使用して計算された値を追加するのに便利です。
- 使用例: 列を追加して計算を行う
MyTable | extend NewColumn = MyColumn * 2
-
filter()
- 説明: 特定の条件に基づいて行をフィルタリングします。条件に一致する行のみを取得します。
- 使用例: 特定の条件に基づいて行をフィルタリングする
MyTable | filter MyColumn > 10
-
distinct()
- 説明: 列の値を一意にし、重複を排除します。重複しない値のみを取得します。
- 使用例: 列の値を一意にする
MyTable | distinct MyColumn
-
union()
- 説明: 複数のクエリ結果を結合します。異なるテーブルやクエリの結果をまとめて表示します。
- 使用例: 複数のクエリ結果を結合する
UnionQuery1 | union UnionQuery2
-
join()
- 説明: 異なるテーブル間の関連する行を結合します。共通の列を使用して行をマッチングします。
- 使用例: 異なるテーブルを結合する
Table1 | join kind=inner (Table2) on CommonColumn
-
lookup()
- 説明: 他のテーブルから特定の条件に基づいて値を取得します。関連するテーブルから値を引き出すのに使用されます。
- 使用例: 他のテーブルから値を引き出す
LookupTable | lookup CommonColumn
-
sample()
- 説明: クエリ結果からランダムにサンプリングされた行を取得します。データの一部をサンプリングして確認するのに役立ちます。
- 使用例: サンプリングされた行を取得する
MyTable | sample 10
-
parse()
- 説明: 文字列からデータを解析して新しい列を作成します。正規表現などを使用してデータを抽出するのに使われます。
- 使用例: 文字列からデータを抽出して新しい列を作成する
MyTable | parse MyColumn with * "abc" resultValue
-
evaluate()
- 説明: クエリの最後に評価式を使用してデータを変換します。集計や計算を行う際に使われます。
- 使用例: 評価式を使用してデータを変換する
MyTable | evaluate sum(MyColumn)
-
range()
- 説明: 数値の範囲を生成してクエリ結果として表示します。主にテストやデモ用途で使用されます。
- 使用例: 指定した範囲の数値を生成する
range x from 1 to 10 step 2
- strcat(), strlen(), trim(), upper(), lower(), substring(), replace(), regex(), split()
- datetime_add(), datetime_diff(), datetime_part(), now(), ago(), startofday(), endofday()
- and, or, not, in, has(), contains(), isempty()
- summarize, make_list(), makeset(), makelist(), summarize arg_max(), arg_min()
- series_fills(), series_interval(), series_sample(), series_decompose()
- case(), coalesce(), isnull(), isnotnull(), tostring(), todouble(), tolong(), todatetime(), iif()
- series_fit_line()