Övning: Olika typer av KQL-frågor

Slutförd

Nu ska vi ta det du har lärt dig om strukturen och användningen av olika typer av frågeuttryck och skriva några frågor.

Fråga med tabelluttrycksinstruktioner

Tabelluttrycksinstruktioner är grundläggande i KQL eftersom de gör att vi kan filtrera och ändra tabelldata för att returnera önskade resultat.

Vi går igenom ett exempel. Välj relevant flik för din miljö.

Azure Data Explorer erbjuder ett hjälpkluster med olika typer av data förinlästa. Du kan komma åt det här klustret med hjälp av webbgränssnittet för Azure Data Explorer.

Följande steg visar hur du skapar en fråga genom att tillämpa operatorer på en inledande tabelldatauppsättning. Varje fråga består av tabelluttrycksinstruktioner, varav vissa innehåller operatorer. Operatorer tar en tabellinmatning, utför en åtgärd och skapar ett nytt tabellutdata.

  1. Börja med en tabelldatauppsättning.

    StormEvents
    

    Utdata: Den fullständiga tabelldatauppsättningen StormEvents från tabellen.

  2. Använd ett filter med operatorn where för att välja specifika händelser, till exempel Översvämningshändelser . Operatorn where filtrerar tabelldatauppsättningen och bevarar tabellstrukturen.

    StormEvents
    | where State == "FLORIDA"
    

    Utdata: En tabelldatauppsättning med StormEvents poster i delstaten FLORIDA.

  3. Använd en annan operator för att ytterligare ändra tabellutdata.

    StormEvents
    | where State == "FLORIDA"
    | sort by InjuriesDirect desc
    

    Utdata: En tabelldatauppsättning med StormEvents poster i FLORIDA sorterade i fallande ordning baserat på InjuriesDirect kolumnen.

Introducera en variabel med en let-instruktion

Med let-instruktioner kan vi definiera variabler i KQL-frågor, vilket gör dem mer läsbara och modulära.

Vi går igenom ett exempel. Välj relevant flik för din miljö.

I följande fråga, state och injuryThreshold är variabler som kan tilldelas värden enligt dina specifika krav. Dessa variabler används sedan i frågan för att filtrera StormEvents tabellen baserat på de definierade kriterierna.

let state = "TEXAS";
let injuryThreshold = 10;
StormEvents
| where State == state and InjuriesDirect + InjuriesIndirect > injuryThreshold