in~ – operátor
Filtruje sadu záznamů pro data pomocí řetězce nerozlišujícího malá a velká písmena.
Následující tabulka obsahuje porovnání in
operátorů:
Operátor | Popis | Case-Sensitive | Příklad (výnosy true ) |
---|---|---|---|
in |
Rovná se jednomu z prvků. | Yes | "abc" in ("123", "345", "abc") |
!in |
Nerovná se žádnému z prvků. | Yes | "bca" !in ("123", "345", "abc") |
in~ |
Rovná se některému z prvků. | No | "Abc" in~ ("123", "345", "abc") |
!in~ |
Nerovná se žádnému z prvků. | No | "bCa" !in~ ("123", "345", "ABC") |
Poznámka
Vnořená pole se zploštějí do jednoho seznamu hodnot. Například se x in (dynamic([1,[2,3]]))
stane x in (1,2,3)
.
Další informace o dalších operátorech a určení operátoru, který je pro váš dotaz nejvhodnější, najdete v tématu Operátory řetězců datových typů.
Operátory bez rozlišování velkých a malých písmen jsou v současné době podporovány pouze pro text ASCII. Pro porovnání mimo ASCII použijte funkci tolower().
Tipy pro zvýšení výkonu
Poznámka
Výkon závisí na typu vyhledávání a struktuře dat. Osvědčené postupy najdete v tématu Osvědčené postupy pro dotazy.
Pokud je to možné, použijte v souboru rozlišující malá a velká písmena.
Syntax
T|
where
Colin~
(
Výraz,
... )
Přečtěte si další informace o konvencích syntaxe.
Parametry
Název | Typ | Vyžadováno | Popis |
---|---|---|---|
T | string |
✔️ | Tabulkový vstup, který se má filtrovat. |
Col | string |
✔️ | Sloupec, podle kterého chcete filtrovat. |
expression | skalární nebo tabulkové | ✔️ | Výraz, který určuje hodnoty, pro které se mají hledat. Každý výraz může být skalární hodnotou nebo tabulkovým výrazem , který vytvoří sadu hodnot. Pokud má tabulkový výraz více sloupců, použije se první sloupec. Hledání bude brát v úvahu až 1 000 000 jedinečných hodnot. |
Návraty
Řádky v T , pro které je true
predikát .
Příklady
Seznam skalárů
Následující dotaz ukazuje, jak používat in~
seznam skalárních hodnot oddělených čárkami.
StormEvents
| where State in~ ("FLORIDA", "georgia", "NEW YORK")
| count
Výstup
Počet |
---|
4775 |
Dynamické pole
Následující dotaz ukazuje, jak používat in~
dynamické pole.
StormEvents
| where State in~ (dynamic(["FLORIDA", "georgia", "NEW YORK"]))
| count
Výstup
Počet |
---|
4775 |
Stejný dotaz lze také zapsat pomocí příkazu let.
let states = dynamic(["FLORIDA", "georgia", "NEW YORK"]);
StormEvents
| where State has_any (states)
| summarize count() by State
Výstup
Počet |
---|
4775 |
Tabulkový výraz
Následující dotaz ukazuje, jak použít in~
s vloženým tabulkovým výrazem. Všimněte si, že vložený tabulkový výraz musí být uzavřený pomocí dvojitých závorek.
StormEvents
| where State in~ (PopulationData | where Population > 5000000 | project State)
| summarize count() by State
Výstup
Stav | Počet_ |
---|---|
TEXAS | 4701 |
ILLINOIS | 2022 |
MISSOURI | 2016 |
GRUZIE | 1983 |
MINNESOTA | 1881 |
... | ... |
Stejný dotaz lze také zapsat pomocí příkazu let. Všimněte si, že dvojité závorky uvedené v posledním příkladu nejsou v tomto případě nutné.
let large_states = PopulationData | where Population > 5000000 | project State;
StormEvents
| where State in~ (large_states)
| summarize count() by State
Výstup
Stav | Počet_ |
---|---|
TEXAS | 4701 |
ILLINOIS | 2022 |
MISSOURI | 2016 |
GRUZIE | 1983 |
MINNESOTA | 1881 |
... | ... |
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro