in~ 演算子
適用対象: ✅Microsoft Fabric✅Azure データ エクスプローラー✅Azure Monitor✅Microsoft Sentinel
大文字と小文字を区別しない文字列を使用して、データのレコード セットをフィルター処理します。
次の表に、in
演算子の比較を示します。
Operator | 説明 | 大文字と小文字の区別 | 例 (true になる) |
---|---|---|---|
in |
要素のいずれかに等しい | はい | "abc" in ("123", "345", "abc") |
!in |
要素のいずれとも等しくない | はい | "bca" !in ("123", "345", "abc") |
in~ |
要素のいずれかに等しい | いいえ | "Abc" in~ ("123", "345", "abc") |
!in~ |
要素のいずれとも等しくない | いいえ | "bCa" !in~ ("123", "345", "ABC") |
Note
入れ子になった配列は、単一の値リストにフラット化されます。 たとえば、x in (dynamic([1,[2,3]]))
が x in (1,2,3)
になります。
他の演算子の詳細と、クエリに最も適した演算子を確認するには、データ型文字列演算子に関するページを参照してください。
大文字と小文字を区別しない演算子は、現在 ASCII テキストでのみサポートされています。 ASCII 以外の比較には、tolower() 関数を使用してください。
パフォーマンスに関するヒント
Note
128 を超える検索用語を使用すると、テキスト インデックス検索の最適化が無効になり、クエリのパフォーマンスが低下する可能性があります。
Note
パフォーマンスは、検索の種類とデータの構造によって異なります。 ベスト プラクティスについては、「クエリのベスト プラクティス」を参照してください。
可能な場合は、大文字と小文字を区別する inを使用します。
構文
T |
where
col in~
(
expression,
... )
構文規則について詳しく知る。
パラメーター
件名 | タイプ | Required | 説明 |
---|---|---|---|
T | string |
✔️ | フィルター処理する表形式の入力。 |
col | string |
✔️ | フィルター処理の対象となる列。 |
式 (expression) | スカラーまたは表形式 | ✔️ | 検索する値を指定する式。 各式には、 scalar 値、または一連の値を生成する 表形式の式 を指定できます。 表形式の式に複数の列がある場合は、最初の列が使用されます。 検索では、最大 1,000,000 個の個別の値が考慮されます。 |
返品
述語が true
である T 内の行。
例
スカラーの一覧
次のクエリは、スカラー値のコンマ区切りのリストで in~
を使用する方法を示しています。
StormEvents
| where State in~ ("FLORIDA", "georgia", "NEW YORK")
| count
出力
カウント |
---|
4775 |
Dynamic array
次のクエリは、動的配列で in~
を使用する方法を示しています。
StormEvents
| where State in~ (dynamic(["FLORIDA", "georgia", "NEW YORK"]))
| count
出力
カウント |
---|
4775 |
同じクエリを let ステートメントで記述することもできます。
let states = dynamic(["FLORIDA", "georgia", "NEW YORK"]);
StormEvents
| where State has_any (states)
| summarize count() by State
出力
カウント |
---|
4775 |
表形式の式
次のクエリは、インラインテーブル式で in~
を使用する方法を示しています。 インライン表形式の式は、二重かっこで囲む必要があることに注意してください。
StormEvents
| where State in~ (PopulationData | where Population > 5000000 | project State)
| summarize count() by State
出力
都道府県 | count_ |
---|---|
テキサス州 | 4701 |
ILLINOIS | 2022 |
MISSOURI | 2016 |
ジョージア | 1983 |
ミネソタ | 1881 |
... | ... |
同じクエリを let ステートメントで記述することもできます。 この場合、前の例で示した二重かっこは必要ありません。
let large_states = PopulationData | where Population > 5000000 | project State;
StormEvents
| where State in~ (large_states)
| summarize count() by State
出力
都道府県 | count_ |
---|---|
テキサス州 | 4701 |
ILLINOIS | 2022 |
MISSOURI | 2016 |
ジョージア | 1983 |
ミネソタ | 1881 |
... | ... |