in~-operator

Filtrerar en postuppsättning för data med en skiftlägesokänslig sträng.

Följande tabell innehåller en jämförelse av operatorerna in :

Operator Beskrivning Case-Sensitive Exempel (ger true)
in Lika med ett av elementen Yes "abc" in ("123", "345", "abc")
!in Inte lika med något av elementen Yes "bca" !in ("123", "345", "abc")
in~ Lika med något av elementen No "Abc" in~ ("123", "345", "abc")
!in~ Inte lika med något av elementen No "bCa" !in~ ("123", "345", "ABC")

Anteckning

Kapslade matriser plattas ut till en enda lista med värden. Blir till exempel x in (dynamic([1,[2,3]]))x in (1,2,3).

Mer information om andra operatorer och för att avgöra vilken operator som passar bäst för din fråga finns i datatypsträngoperatorer.

Skiftlägesokänsliga operatorer stöds för närvarande endast för ASCII-text. För jämförelse utan ASCII använder du funktionen tolower().

Prestandatips

Anteckning

Prestanda beror på typen av sökning och datastrukturen. Metodtips finns i Metodtips för frågor.

Använd skiftlägeskänsligt i när det är möjligt.

Syntax

T|whereÖverstein~(Uttryck, ... )

Läs mer om syntaxkonventioner.

Parametrar

Namn Typ Obligatorisk Beskrivning
T string ✔️ Tabellindata som ska filtreras.
Överste string ✔️ Kolumnen som du vill filtrera efter.
expression skalär eller tabell ✔️ Ett uttryck som anger de värden som ska sökas efter. Varje uttryck kan vara ett skalärt värde eller ett tabelluttryck som skapar en uppsättning värden. Om ett tabelluttryck har flera kolumner används den första kolumnen. Sökningen tar upp till 1 000 000 distinkta värden i åtanke.

Returer

Rader i T som predikatet är trueför .

Exempel

Lista över skalärer

Följande fråga visar hur du använder in~ med en kommaavgränsad lista med skalära värden.

StormEvents 
| where State in~ ("FLORIDA", "georgia", "NEW YORK") 
| count

Resultat

Antal
4775

Dynamisk matris

Följande fråga visar hur du använder in~ med en dynamisk matris.

StormEvents 
| where State in~ (dynamic(["FLORIDA", "georgia", "NEW YORK"])) 
| count

Resultat

Antal
4775

Samma fråga kan också skrivas med en let-instruktion.

let states = dynamic(["FLORIDA", "georgia", "NEW YORK"]);
StormEvents 
| where State has_any (states)
| summarize count() by State

Resultat

Antal
4775

Tabelluttryck

Följande fråga visar hur du använder in~ med ett infogat tabelluttryck. Observera att ett infogat tabelluttryck måste omges av dubbla parenteser.

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

Resultat

Tillstånd Räkna_
TEXAS 4701
ILLINOIS 2022
MISSOURI 2016
GEORGIEN 1983
MINNESOTA 1881
... ...

Samma fråga kan också skrivas med en let-instruktion. Observera att de dubbla parenteserna som anges i det sista exemplet inte är nödvändiga i det här fallet.

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

Resultat

Tillstånd Räkna_
TEXAS 4701
ILLINOIS 2022
MISSOURI 2016
GEORGIEN 1983
MINNESOTA 1881
... ...