arg_max() (Aggregationsfunktion)
Gilt für: ✅Microsoft Fabric✅
Sucht eine Zeile in der Tabelle, die den angegebenen Ausdruck maximiert. Sie gibt alle Spalten der Eingabetabelle oder der angegebenen Spalten zurück.
Veraltete Aliase: argmax()
Syntax
arg_max
(
ExprToMaximize,
* | ExprToReturn [,
...])
Erfahren Sie mehr über Syntaxkonventionen.
Parameter
Name | Type | Erforderlich | Beschreibung |
---|---|---|---|
ExprToMaximize | string |
✔️ | Der Ausdruck, für den der Maximalwert bestimmt wird. |
ExprToReturn | string |
✔️ | Der Ausdruck bestimmt, welche Spaltenwerte zurückgegeben werden, aus der Zeile mit dem Maximalwert für ExprToMaximize. Verwenden Sie einen Wildcard-* , um alle Spalten zurückzugeben. |
Gibt zurück
Gibt eine Zeile in der Tabelle zurück, die den angegebenen Ausdruck ExprToMaximizemaximiert, und die Werte von Spalten, die in ExprToReturnangegeben sind.
Trinkgeld
Verwenden Sie die max()-Funktion, um den maximal zulässigen Wert anzuzeigen.
Beispiele
Maximale Breite suchen
Im folgenden Beispiel wird der maximale Breitengrad eines Sturmereignisses in jedem Zustand ermittelt.
StormEvents
| summarize arg_max(BeginLat, BeginLocation) by State
Output
In der Ergebnistabelle werden nur die ersten 10 Zeilen angezeigt.
State | BeginLat | BeginLocation |
---|---|---|
MISSISSIPPI | 34.97 | BARTON |
VERMONT | 45 | NORTH TROY |
AMERIKANISCH-SAMOA | -14.2 | OFU |
HAWAII | 22.2113 | PRINCEVILLE |
MINNESOTA | 49.35 | ARNESEN |
RHODE ISLAND | 42 | WOONSOCKET |
INDIANA | 41.73 | FREMONT |
WEST VIRGINIA | 40.62 | CHESTER |
SOUTH CAROLINA | 35.18 | LANDRUM |
TEXAS | 36.4607 | DARROUZETT |
... | ... | ... |
Letzte schwerwiegendes Zustandsereignis suchen
Im folgenden Beispiel wird das letzte Mal gefunden, wenn ein Ereignis mit einem direkten Tod in jedem Zustand aufgetreten ist, in dem alle Spalten angezeigt werden.
Die Abfrage filtert zuerst die Ereignisse, um nur die Ereignisse einzuschließen, bei denen mindestens ein direkter Tod aufgetreten ist. Anschließend gibt die Abfrage die gesamte Zeile mit der letzten StartTime
zurück.
StormEvents
| where DeathsDirect > 0
| summarize arg_max(StartTime, *) by State
Output
In der Ergebnistabelle werden nur die ersten 10 Zeilen und die ersten drei Spalten angezeigt.
State | StartTime | EndTime | ... |
---|---|---|---|
GUAM | 2007-01-27T11:15:00Z | 2007-01-27T11:30:00Z | ... |
MASSACHUSETTS | 2007-02-03T22:00:00Z | 2007-02-04T10:00:00Z | ... |
AMERIKANISCH-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 | ... |
NEW MEXICO | 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 | ... |
LAKE MICHIGAN | 2007-06-07T13:00:00Z | 2007-06-07T13:00:00Z | ... |
... | ... | ... | ... |
Behandeln von Nullen
Im folgenden Beispiel wird die Nullbehandlung veranschaulicht.
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
Output
Obst | Version | Color |
---|---|---|
Apple | 1 | Rot |
Banane | Gelb | |
Birne | 2 | Grün |
Vergleich mit max()
Die funktion arg_max() unterscheidet sich von der max() function. Mit der funktion arg_max() können Sie andere Spalten zusammen mit dem Maximalwert zurückgeben, und max() nur den Maximalwert selbst zurückgibt.
Beispiele
arg_max()
Suchen Sie das letzte Mal, wenn ein Ereignis mit einem direkten Tod aufgetreten ist, und zeigen Sie alle Spalten in der Tabelle an.
Die Abfrage filtert zuerst die Ereignisse so, dass nur Ereignisse einbezogen werden, bei denen mindestens ein direkter Tod aufgetreten ist. Anschließend gibt die Abfrage die gesamte Zeile mit der letzten (maximalen) StartTime zurück.
StormEvents
| where DeathsDirect > 0
| summarize arg_max(StartTime, *)
Die Ergebnistabelle gibt alle Spalten für die Zeile zurück, die den höchsten Wert im angegebenen Ausdruck enthält.
StartTime | EndTime | EpisodeId | EventId | State | EventType | ... |
---|---|---|---|---|---|---|
2007-12-31T15:00:00Z | 2007-12-31T15:00:00 | 12688 | 69700 | UTAH | Lawine | ... |
max()
Suchen Sie das letzte Mal, wenn ein Ereignis mit einem direkten Tod passiert ist.
Die Abfrage filtert Ereignisse, um nur Ereignisse einzuschließen, bei denen mindestens ein direkter Tod vorhanden ist, und gibt dann den Maximalwert für StartTime zurück.
StormEvents
| where DeathsDirect > 0
| summarize max(StartTime)
Die Ergebnistabelle gibt den Maximalwert von StartTime zurück, ohne andere Spalten für diesen Datensatz zurückzugeben.
max_StartTime |
---|
2007-12-31T15:00:00Z |