Filtrowanie wyników za pomocą operatora podsumowania
Funkcje arg_max() i arg_min() filtrować odpowiednio pierwsze i dolne wiersze.
funkcja arg_max
Poniższa instrukcja zwróci najbardziej bieżący wiersz z tabeli SecurityEvent dla komputera SQL12.NA.contosohotels.com. Funkcja * w arg_max żąda wszystkich kolumn dla wiersza.
SecurityEvent
| where Computer == "SQL12.na.contosohotels.com"
| summarize arg_max(TimeGenerated,*) by Computer
arg_min, funkcja
W tej instrukcji najstarszy element SecurityEvent dla komputera SQL12.NA.contosohotels.com zostanie zwrócony jako zestaw wyników.
SecurityEvent
| where Computer == "SQL12.na.contosohotels.com"
| summarize arg_min(TimeGenerated,*) by Computer
Ponowne przejrzenie potoku wyników
Wyniki zamówienia przechodzą przez znak potoku ma znaczenie. Przejrzyj następujące dwie instrukcje języka KQL. Jaka jest różnica między zestawami wyników?
Uruchom każde zapytanie oddzielnie, aby wyświetlić wyniki.
// Statement 1
SecurityEvent
| summarize arg_max(TimeGenerated, *) by Account
| where EventID == "4624"
// Statement 2
SecurityEvent
| where EventID == "4624"
| summarize arg_max(TimeGenerated, *) by Account
Instrukcja 1 będzie miała konta, dla których ostatnie działanie było logowaniem.
Tabela SecurityEvent zostanie najpierw podsumowana i zwróci najbardziej bieżący wiersz dla każdego konta. Następnie zostaną zwrócone tylko wiersze o identyfikatorze EventID równym 4624 (identyfikator logowania).
Instrukcja 2 będzie mieć najnowsze logowanie dla kont, które się zalogowały.
Tabela SecurityEvent zostanie przefiltrowana tak, aby zawierała tylko identyfikator EventID = 4624. Następnie te wyniki zostaną podsumowane dla najbardziej bieżącego wiersza logowania według konta.