次の方法で共有


!in~ 演算子

適用対象: ✅Microsoft FabricAzure データ エクスプローラーAzure MonitorMicrosoft 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

パフォーマンスは、検索の種類とデータの構造によって異なります。 ベスト プラクティスについては、「クエリのベスト プラクティス」を参照してください。

可能な場合は、大文字と小文字を区別する !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

出力

カウント
54,291

Dynamic array

次のクエリは、動的配列で !in~ を使用する方法を示しています。

StormEvents 
| where State !in~ (dynamic(["Florida", "Georgia", "New York"])) 
| count

出力

カウント
54291

同じクエリを let ステートメントで記述することもできます

let states = dynamic(["Florida", "Georgia", "New York"]);
StormEvents 
| where State !in~ (states)
| summarize count() by State

出力

カウント
54291

表形式の式

次のクエリは、インラインテーブル式で !in~ を使用する方法を示しています。 インライン表形式の式は、二重かっこで囲む必要があることに注意してください。

StormEvents 
| where State !in~ (PopulationData | where Population > 5000000 | project State)
| summarize count() by State

出力

都道府県 count_
KANSAS 3166
アイオワ州 2337
ネブラスカ 1766
オクラホマ 1716
SOUTH DAKOTA 1567
... ...

同じクエリを let ステートメントで記述することもできます。 この場合、前の例で示した二重かっこは必要ありません。

let large_states = PopulationData | where Population > 5000000 | project State;
StormEvents 
| where State !in~ (large_states)
| summarize count() by State

出力

都道府県 count_
KANSAS 3166
アイオワ州 2337
ネブラスカ 1766
オクラホマ 1716
SOUTH DAKOTA 1567
... ...