where-operatorn
Filtrerar en tabell till den delmängd av rader som uppfyller ett predikat.
Operatorerna
where
ochfilter
är likvärdiga
Syntax
T| where
Predikat
Läs mer om syntaxkonventioner.
Parametrar
Namn | Typ | Obligatorisk | Beskrivning |
---|---|---|---|
T | string |
✔️ | Tabellindata vars poster ska filtreras. |
Predikat | string |
✔️ | Uttryck som utvärderas till en bool för varje rad i T. |
Returer
Rader i T för vilka Predikat är true
.
Anteckning
Alla filtreringsfunktioner returnerar false jämfört med null-värden. Använd särskilda null-medvetna funktioner för att skriva frågor som hanterar null-värden.
Prestandatips
Använd enkla jämförelser mellan kolumnnamn och konstanter. ("Konstant" betyder konstant över tabellen – så
now()
ochago()
är OK, och så är skalärvärden tilldelade med hjälp av enlet
instruktion.)Du kan till exempel föredra
where Timestamp >= ago(1d)
attwhere bin(Timestamp, 1d) == ago(1d)
.Enklaste termer först: Om du har flera satser som är kopplade till
and
placerar du först de satser som bara omfattar en kolumn. DetTimestamp > ago(1d) and OpId == EventId
är bättre än tvärtom.
Mer information finns i sammanfattningen av tillgängliga strängoperatorer och sammanfattningen av tillgängliga numeriska operatorer.
Exempel
Orderjämförelser efter komplexitet
Följande fråga returnerar stormposter som rapporterar skadad egenskap, är översvämningar och startar och slutar på olika platser.
Observera att vi placerar jämförelsen mellan två kolumner sist, eftersom operatorn där inte kan använda indexet och tvingar fram en genomsökning.
StormEvents
| project DamageProperty, EventType, BeginLocation, EndLocation
| where DamageProperty > 0
and EventType == "Flood"
and BeginLocation != EndLocation
Följande tabell visar bara de 10 främsta resultaten. Kör frågan om du vill se fullständiga utdata.
DamageProperty | Eventtype | BeginLocation | EndLocation |
---|---|---|---|
5000 | Översvämning | FAYETTE STAD LOWBER | |
5000 | Översvämning | MORRISVILLE VÄSTRA WAYNESBURG | |
10000 | Översvämning | COPELAND HARRIS GROVE | |
5000 | Översvämning | GLENFORD MT PERRY | |
25000 | Översvämning | EAST SENECA BUFFALO AIRPARK ARPT | |
20000 | Översvämning | EBENEZER SLOAN | |
10000 | Översvämning | BUEL CALHOUN | |
10000 | Översvämning | GOODHOPE WEST MILFORD | |
5000 | Översvämning | DUNKIRK SKOG | |
20000 | Översvämning | FARMINGTON MANNINGTON |
Kontrollera om kolumnen innehåller sträng
Följande fråga returnerar de rader där ordet "ko" visas i valfri kolumn.
StormEvents
| where * has "cow"
Relaterat innehåll
Feedback
https://aka.ms/ContentUserFeedback.
Kommer snart: Under hela 2024 kommer vi att fasa ut GitHub-problem som feedbackmekanism för innehåll och ersätta det med ett nytt feedbacksystem. Mer information finns i:Skicka och visa feedback för