Sdílet prostřednictvím


arg_min() (agregační funkce)

Přepněte služby pomocí rozevíracího seznamu Verze . Přečtěte si další informace o navigaci.
Platí pro: ✅ Microsoft Fabric ✅ Azure Data Explorer ✅ Azure Monitor ✅ Microsoft Sentinel

Najde řádek v tabulce, který minimalizuje zadaný výraz. Vrátí všechny sloupce vstupní tabulky nebo zadané sloupce.

Poznámka:

Tato funkce se používá ve spojení s operátorem sumarizace.

Zastaralé aliasy: argmin()

Syntaxe

arg_min ( ExprToMinimize,* | ExprToReturn [, ...])

Přečtěte si další informace o konvencích syntaxe.

Parametry

Název Typ Požadováno Popis
VýrazToMinimize string ✔️ Výraz, pro který je určena minimální hodnota.
VýrazToReturn string ✔️ Výraz určuje, které sloupce jsou vráceny hodnoty, z řádku, který má minimální hodnotu pro ExprToMinimize. K vrácení všech sloupců použijte zástupný znak *.

Zpracování null

Když ExprToMinimize má hodnotu null pro všechny řádky v tabulce, vybere se jeden řádek v tabulce. V opačném případě se řádky, ve kterých výraz ExprToMinimize má hodnotu null, ignorují.

Návraty

Vrátí řádek v tabulce, který minimalizuje ExprToMinimizea hodnoty sloupců zadaných v ExprToReturn. Použijte nebo * vraťte celý řádek.

Spropitné

Pokud chcete zobrazit pouze minimální hodnotu, použijte funkci min().

Příklady

Následující příklad najde maximální zeměpisnou šířku události storm v každém stavu.

StormEvents 
| summarize arg_min(BeginLat, BeginLocation) by State

Výstup

Zobrazená tabulka výsledků obsahuje pouze prvních 10 řádků.

Stát BeginLat Počáteční poloha
AMERICKÁ SAMOA -14.3 PAGO PAGO
KALIFORNIE 32.5709 NESTOR
MINNESOTA 43.5 BIGELOW
WASHINGTONSKÝ 45.58 WASHOUGAL
GRUZIE 30.67 FARGO
ILLINOIS 37 KÁHIRA
FLORIDA 24.6611 KLÍČ SUGARLOAF
KENTUCKY 36.5 LÍSKA
TEXAS 25.92 BROWNSVILLE
OHIO 38.42 SOUTH PT
... ... ...

Najděte první událost s přímým úmrtím v jednotlivých stavech 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 nejnižší hodnotou pro StartTime.

StormEvents
| where DeathsDirect > 0
| summarize arg_min(StartTime, *) by State

Výstup

Zobrazená tabulka výsledků obsahuje pouze prvních 10 řádků a prvních 3 sloupců.

Stát Počáteční čas Čas ukončení ...
INDIANA 2007-01-01T00:00:00Z 2007-01-22T18:49:00Z ...
FLORIDA 2007-01-03T10:55:00Z 2007-01-03T10:55:00Z ...
NEVADA 2007-01-04T09:00:00Z 2007-01-05T14:00:00Z ...
LOUISIANA 2007-01-04T15:45:00Z 2007-01-04T15:52:00Z ...
WASHINGTONSKÝ 2007-01-09T17:00:00Z 2007-01-09T18:00:00Z ...
KALIFORNIE 2007-01-11T22:00:00Z 2007-01-24T10:00:00Z ...
OKLAHOMA 2007-01-12T00:00:00Z 2007-01-18T23:59:00Z ...
MISSOURI 2007-01-13T03:00:00Z 2007-01-13T08:30:00Z ...
TEXAS 2007-01-13T10:30:00Z 2007-01-13T14:30:00Z ...
ARKANSAS 2007-01-14T03:00:00Z 2007-01-14T03: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_min(Version, *) by Fruit

Výstup

Ovoce Verze Barva
Jablko 0 Červený
Banán Žlutá
Hruška 0 Červenohnědá

Porovnání s min()

Funkce arg_min() se liší od funkce min(). Funkce arg_min() umožňuje vrátit další sloupce spolu s minimální hodnotou a min() vrátí jenom samotnou minimální hodnotu.

Příklady

Následující příklad používá arg_min() k nalezení poslední události s přímým úmrtím v každém stavu, který zobrazuje všechny sloupce.

StormEvents
| where DeathsDirect > 0
| summarize arg_min(StartTime, *)

Tabulka výsledků vrátí všechny sloupce řádku, který obsahuje nejnižší hodnotu ve výrazu zadaném.

Počáteční čas Čas ukončení Id epizody ID události Stát Typ události ...
2007-01-01T00:00:00Z 2007-01-22T18:49:00Z 2408 11929 INDIANA Povodeň ...

Následující příklad používá funkci min() k vyhledání poslední události s přímým úmrtím v každém stavu, ale vrátí pouze minimální hodnotu StartTime.

StormEvents
| where DeathsDirect > 0
| summarize min(StartTime)

Tabulka výsledků vrátí nejnižší hodnotu pouze v konkrétním sloupci.

min_StartTime
2007-01-01T00:00:00Z