Delen via


arg_min() (aggregatiefunctie)

Van toepassing op: ✅Microsoft FabricAzure Data ExplorerAzure MonitorMicrosoft Sentinel-

Hiermee zoekt u een rij in de tabel waarmee de opgegeven expressie wordt geminimaliseerd. Hiermee worden alle kolommen van de invoertabel of de opgegeven kolommen geretourneerd.

Notitie

Deze functie wordt gebruikt in combinatie met de operator summarize.

afgeschafte aliassen: argmin()

Syntaxis

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

Meer informatie over syntaxisconventies.

Parameterwaarden

Naam Typologie Vereist Beschrijving
ExprToMinimize- string ✔️ De expressie waarvoor de minimumwaarde wordt bepaald.
ExprToReturn- string ✔️ De expressie bepaalt welke waarden van kolommen worden geretourneerd, in de rij met de minimumwaarde voor ExprToMinimize-. Gebruik een jokerteken * om alle kolommen te retourneren.

Null-verwerking

Wanneer ExprToMinimize- null is voor alle rijen in een tabel, wordt één rij in de tabel gekozen. Anders worden rijen waarbij ExprToMinimize- null is genegeerd.

Retourneert

Retourneert een rij in de tabel die ExprToMinimize-minimaliseert en de waarden van kolommen die zijn opgegeven in ExprToReturn-. Gebruik of * om de hele rij te retourneren.

Fooi

Als u alleen de minimale waarde wilt zien, gebruikt u de functie min().

Voorbeelden

In het volgende voorbeeld wordt de maximale breedtegraad van een storm-gebeurtenis in elke status gevonden.

StormEvents 
| summarize arg_min(BeginLat, BeginLocation) by State

uitvoer

De weergegeven resultatentabel bevat alleen de eerste 10 rijen.

Staat BeginLat BeginLocation
AMERIKAANS-SAMOA -14.3 PAGO PAGO
CALIFORNIË 32.5709 NESTOR
MINNESOTA 43.5 BIGELOW
WASHINGTON 45.58 WASHOUGAL
GEORGIË 30.67 FARGO
ILLINOIS 37 CAÏRO
FLORIDA 24.6611 SUIKERLOAFSLEUTEL
KENTUCKY 36.5 HAZELAAR
TEXAS 25.92 BROWNSVILLE
OHIO 38.42 ZUID PT
... ... ...

Zoek de eerste keer dat een gebeurtenis met een directe dood in elke staat is opgetreden, waarbij alle kolommen worden weergegeven.

De query filtert eerst de gebeurtenissen om alleen de gebeurtenissen op te nemen waarbij ten minste één directe dood is. Vervolgens retourneert de query de hele rij met de laagste waarde voor StartTime.

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

uitvoer

De weergegeven resultatentabel bevat alleen de eerste 10 rijen en de eerste drie kolommen.

Staat Begintijd Eindtijd ...
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 ...
WASHINGTON 2007-01-09T17:00:00Z 2007-01-09T18:00:00Z ...
CALIFORNIË 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 ...
... ... ... ...

In het volgende voorbeeld ziet u null-verwerking.

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

uitvoer

Vrucht Versie Kleur
Appel 1 Rood
Banaan Geel
Peer 1 Bruin

Vergelijking met min()

De functie arg_min() verschilt van de functie min(). Met de functie arg_min() kunt u extra kolommen retourneren, samen met de minimumwaarde, en min() alleen de minimumwaarde zelf retourneert.

Voorbeelden

In het volgende voorbeeld wordt arg_min() gebruikt om de laatste keer te vinden dat een gebeurtenis met een directe dood in elke staat is opgetreden, waarbij alle kolommen worden weergegeven.

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

De resultatentabel retourneert alle kolommen voor de rij met de laagste waarde in de opgegeven expressie.

Begintijd Eindtijd EpisodeId EventId Staat Type van evenement ...
2007-01-01T00:00:00Z 2007-01-22T18:49:00Z 2408 11929 INDIANA Overstroming ...

In het volgende voorbeeld wordt de functie min() gebruikt om de laatste keer te vinden dat een gebeurtenis met een directe dood in elke staat is opgetreden, maar alleen de minimumwaarde van StartTime retourneert.

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

De resultatentabel retourneert alleen de laagste waarde in de specifieke kolom.

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