Dela via


i operatorn

Gäller för: ✅Microsoft FabricAzure Data ExplorerAzure MonitorMicrosoft Sentinel

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

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

Operatör Beskrivning Case-Sensitive Exempel (ger true)
in Är lika med ett av elementen Ja "abc" in ("123", "345", "abc")
!in Inte lika med något av elementen Ja "bca" !in ("123", "345", "abc")
in~ Är lika med något av elementen Nej "Abc" in~ ("123", "345", "abc")
!in~ Inte lika med något av elementen Nej "bCa" !in~ ("123", "345", "ABC")

Not

Kapslade matriser plattas ut till en enda lista med värden. Till exempel blir 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 är lämpligast för din fråga finns i datatypssträngoperatorer.

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

Prestandatips

Not

När fler än 128 söktermer används inaktiveras uppslagsoptimering för textindex, vilket kan leda till sämre frågeprestanda.

Not

Prestanda beror på typen av sökning och datastrukturen. Metodtips finns i bästa praxis för Fråga.

Syntax

T|wherecolin(uttryck, ... )

Läs mer om syntaxkonventioner.

Parametrar

Namn Typ Krävs Beskrivning
T string ✔️ Tabellindata som ska filtreras.
col string ✔️ Kolumnen som ska filtreras.
uttryck 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 hänsyn till upp till 1 000 000 distinkta värden.

Returnerar

Rader i T för vilka predikatet är true.

Exempel

Lista över skalärer

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

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

utdata

Räkna
4775

Dynamisk matris

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

let states = dynamic(['FLORIDA', 'ATLANTIC SOUTH', 'GEORGIA']);
StormEvents 
| where State in (states)
| count

utdata

Räkna
3218

Tabelluttryck

Följande fråga visar hur du använder in med ett tabelluttryck.

let Top_5_States = 
    StormEvents
    | summarize count() by State
    | top 5 by count_; 
StormEvents 
| where State in (Top_5_States) 
| count

Samma fråga kan skrivas med ett infogat tabelluttryck.

StormEvents 
| where State in (
    StormEvents
    | summarize count() by State
    | top 5 by count_
    ) 
| count

utdata

Räkna
14242

Överkant med andra exempel

I följande exempel identifieras de fem översta tillstånden med blixthändelser och använder iff()-funktionen och in-operatorn för att klassificera blixthändelser efter de fem översta tillstånden, märkta med tillståndsnamn, och alla andra märkta som "Annat".

let Lightning_By_State = materialize(StormEvents
    | summarize lightning_events = countif(EventType == 'Lightning') by State);
let Top_5_States = Lightning_By_State | top 5 by lightning_events | project State; 
Lightning_By_State
| extend State = iff(State in (Top_5_States), State, "Other")
| summarize sum(lightning_events) by State 

utdata

Stat sum_lightning_events
ALABAMA 29
WISCONSIN 31
TEXAS 55
FLORIDA 85
GEORGIEN 106
Annan 415

Använda en statisk lista som returneras av en funktion

I följande exempel räknas händelser från tabellen StormEvents baserat på en fördefinierad lista över intressanta tillstånd. De intressanta tillstånden definieras av funktionen InterestingStates().

StormEvents 
| where State in (InterestingStates()) 
| count

utdata

Räkna
4775

Följande fråga visar vilka tillstånd som anses intressanta av funktionen InterestingStates().

.show function InterestingStates

utdata

Namn Parametrar Kropp Mapp DocString
InterestingStates () { dynamic(["WASHINGTON", "FLORIDA", "GEORGIA", "NEW YORK"]) } }