in~ 運算子
篩選記錄集,以取得具有不區分大小寫字串的資料。
下表提供 in
運算子的比較:
運算子 | 描述 | 區分大小寫 | 範例 (結果為 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") |
注意
巢狀陣列會壓平合併成單一的值清單。 例如,x in (dynamic([1,[2,3]]))
會成為 x in (1,2,3)
。
如需其他運算子的詳細資訊,以及如何判斷哪一個運算子最適合您的查詢,請參閱 datatype 字串運算子。
目前只有 ASCII 文字支援不區分大小寫的運算子。 若為非 ASCII 比較,請使用 tolower () 函數。
效能秘訣
注意
效能取決於搜尋的類型和資料的結構。 如需最佳做法,請參閱查詢最佳做法。
可能的話,請使用 區分大小寫的 。
Syntax
T|
where
colin~
(
表達,
... )
深入瞭解 語法慣例。
參數
名稱 | 類型 | 必要 | Description |
---|---|---|---|
T | string |
✔️ | 要篩選的表格式輸入。 |
col | string |
✔️ | 要篩選的數據行。 |
expression | 純量或表格式 | ✔️ | 表達式,指定要搜尋的值。 每個運算式可以是 純量 值或產生一組值的 表格式表達式 。 如果表格式表達式有多個數據行,則會使用第一個數據行。 搜尋將考慮最多 1,000,000 個相異值。 |
傳回
T 中的資料列,其述詞是 true
。
範例
純量清單
下列查詢示範如何搭配以逗號分隔的純量值清單使用 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
輸出
State | count_ |
---|---|
德克薩斯州 | 4701 |
伊利諾州 | 2022 |
密蘇里州 | 2016 |
喬治亞州 | 1983 |
明尼蘇達州 | 1881 |
... | ... |
您也可以使用 let 語句來撰寫相同的查詢。 請注意,在此案例中不需要最後一個範例中提供的雙括弧。
let large_states = PopulationData | where Population > 5000000 | project State;
StormEvents
| where State in~ (large_states)
| summarize count() by State
輸出
State | count_ |
---|---|
德克薩斯州 | 4701 |
伊利諾州 | 2022 |
密蘇里州 | 2016 |
喬治亞州 | 1983 |
明尼蘇達州 | 1881 |
... | ... |
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應