arg_max() (agregační funkce)
Platí pro: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Vyhledá řádek v tabulce, který maximalizuje zadaný výraz. Vrátí všechny sloupce vstupní tabulky nebo zadané sloupce.
Zastaralé aliasy: argmax()
Syntaxe
arg_max
(
ExprToMaximize,
* | ExprToReturn [,
...])
Přečtěte si další informace o konvencích syntaxe.
Parametry
Název | Type | Požadováno | Popis |
---|---|---|---|
VýrazToMaximize | string |
✔️ | Výraz, pro který je určena maximální hodnota. |
VýrazToReturn | string |
✔️ | Výraz určuje, které sloupce jsou vráceny hodnoty, z řádku, který má maximální hodnotu pro ExprToMaximize. K vrácení všech sloupců použijte zástupný znak * . |
Návraty
Vrátí řádek v tabulce, který maximalizuje zadaný výraz ExprToMaximizea hodnoty sloupců zadaných v ExprToReturn.
Spropitné
Pokud chcete zobrazit pouze maximální hodnotu, použijte funkci max().
Příklady
Najděte maximální zeměpisnou šířku události bouře v jednotlivých stavech.
StormEvents
| summarize arg_max(BeginLat, BeginLocation) by State
Tabulka výsledků zobrazuje pouze prvních 10 řádků.
State | BeginLat | Počáteční poloha |
---|---|---|
MISSISSIPPI | 34.97 | BARTON |
VERMONT | 45 | SEVERNÍ TROY |
AMERICKÁ SAMOA | -14.2 | OFU |
HAVAJ | 22.2113 | PRINCEVILLE |
MINNESOTA | 49.35 | ARNESEN |
RHODE ISLAND | 42 | WOONSOCKET |
INDIANA | 41.73 | FREMONT |
ZÁPADNÍ VIRGINIE | 40.62 | CHESTER |
SOUTH CAROLINA | 35.18 | LANDRUM |
TEXAS | 36.4607 | DARROUZETT |
... | ... | ... |
Najděte čas poslední události s přímým úmrtím v každém stavu a zobrazte všechny sloupce.
Dotaz nejprve vyfiltruje události tak, aby zahrnoval pouze ty, u kterých došlo alespoň k jednomu přímému smrti. Potom dotaz vrátí celý řádek s nejnovějším časem StartTime.
StormEvents
| where DeathsDirect > 0
| summarize arg_max(StartTime, *) by State
Tabulka výsledků zobrazuje pouze prvních 10 řádků a prvních 3 sloupců.
State | Počáteční čas | EndTime | ... |
---|---|---|---|
GUAM | 2007-01-27T11:15:00Z | 2007-01-27T11:30:00Z | ... |
MASSACHUSETTS | 2007-02-03T22:00:00Z | 2007-02-04T10:00:00Z | ... |
AMERICKÁ SAMOA | 2007-02-17T13:00:00Z | 2007-02-18T11:00:00Z | ... |
IDAHO | 2007-02-17T13:00:00Z | 2007-02-17T15:00:00Z | ... |
DELAWARE | 2007-02-25T13:00:00Z | 2007-02-26T01:00:00Z | ... |
WYOMING | 2007-03-10T17:00:00Z | 2007-03-10T17:00:00Z | ... |
NOVÉ MEXIKO | 2007-03-23T18:42:00Z | 2007-03-23T19:06:00Z | ... |
INDIANA | 2007-05-15T14:14:00Z | 2007-05-15T14:14:00Z | ... |
MONTANA | 2007-05-18T14:20:00Z | 2007-05-18T14:20:00Z | ... |
JEZERO MICHIGAN | 2007-06-07T13:00:00Z | 2007-06-07T13:00:00Z | ... |
... | ... | ... | ... |
Následující příklad ukazuje zpracování hodnoty null.
datatable(Fruit: string, Color: string, Version: int) [
"Apple", "Red", 1,
"Apple", "Green", int(null),
"Banana", "Yellow", int(null),
"Banana", "Green", int(null),
"Pear", "Brown", 1,
"Pear", "Green", 2,
]
| summarize arg_max(Version, *) by Fruit
Výstup
Fruit | Verze | Color |
---|---|---|
Apple | 0 | Červený |
Banana | Yellow | |
Hruška | 2 | Zelený |
Porovnání s max()
Funkce arg_max() se liší od funkce max(). Funkce arg_max() umožňuje vrátit další sloupce spolu s maximální hodnotou a max() vrátí jenom samotnou maximální hodnotu.
Příklady
arg_max()
Najděte čas poslední události s přímým úmrtím a zobrazte všechny sloupce v tabulce.
Dotaz nejprve vyfiltruje události tak, aby zahrnoval pouze ty, u kterých došlo alespoň k jednomu přímému smrti. Potom dotaz vrátí celý řádek s nejnovějším (maximálním) časem StartTime.
StormEvents
| where DeathsDirect > 0
| summarize arg_max(StartTime, *)
Tabulka výsledků vrátí všechny sloupce řádku, který obsahuje nejvyšší hodnotu ve výrazu zadaném.
Počáteční čas | EndTime | Id epizody | ID události | State | Typ události | ... |
---|---|---|---|---|---|---|
2007-12-31T15:00:00Z | 2007-12-31T15:00:00 | 12688 | 69700 | UTAH | Lavina | ... |
max()
Najděte čas poslední události s přímým úmrtím.
Dotaz filtruje události tak, aby zahrnoval pouze ty, u kterých je alespoň jedno přímé úmrtí, a pak vrátí maximální hodnotu pro StartTime.
StormEvents
| where DeathsDirect > 0
| summarize max(StartTime)
Tabulka výsledků vrátí maximální hodnotu StartTime bez vrácení dalších sloupců pro tento záznam.
max_StartTime |
---|
2007-12-31T15:00:00Z |
Související obsah
- maximální funkcí
- min. funkce
- avg function
-
percentilu