arg_max() (función de agregación)
Se aplica a: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Busca una fila en la tabla que maximiza la expresión especificada. Devuelve todas las columnas de la tabla de entrada o columnas especificadas.
Nota:
Esta función se usa junto con el operador summarize.
Alias en desuso: argmax()
Sintaxis
arg_max
(
ExprToMaximize,
* | ExprToReturn [,
...])
Obtenga más información sobre las convenciones de sintaxis.
Parámetros
Nombre | Type | Obligatorio | Descripción |
---|---|---|---|
ExprToMaximize | string |
✔️ | Expresión para la que se determina el valor máximo. |
ExprToReturn | string |
✔️ | La expresión determina los valores de las columnas que se devuelven, de la fila que tiene el valor máximo de ExprToMaximize. Use un * comodín para devolver todas las columnas. |
Devoluciones
Devuelve una fila de la tabla que maximiza la expresión especificada ExprToMaximizey los valores de las columnas especificadas en ExprToReturn.
Ejemplos
Busque la latitud máxima de un evento de tormenta en cada estado.
StormEvents
| summarize arg_max(BeginLat, BeginLocation) by State
La tabla de resultados muestra solo las primeras 10 filas.
Valor | BeginLat | BeginLocation |
---|---|---|
MISISIPÍ | 34.97 | BARTON |
VERMONT | 45 | TROYA NORTE |
AMERICAN SAMOA | -14.2 | OFU |
HAWAII | 22.2113 | PRINCEVILLE |
MINNESOTA | 49.35 | ARNESEN |
RHODE ISLAND | 42 | WOONSOCKET |
INDIANA | 41.73 | FREMONT |
VIRGINIA OCCIDENTAL | 40.62 | CHESTER |
SOUTH CAROLINA | 35.18 | LANDRUM |
TEXAS | 36.4607 | DARROUZETT |
... | ... | ... |
Busque la última vez que se produjo un evento con una muerte directa en cada estado, mostrando todas las columnas.
La consulta filtra primero los eventos para incluir solo aquellos en los que hubo al menos una muerte directa. A continuación, la consulta devuelve toda la fila con startTime más reciente.
StormEvents
| where DeathsDirect > 0
| summarize arg_max(StartTime, *) by State
La tabla de resultados muestra solo las primeras 10 filas y las primeras 3 columnas.
Valor | StartTime | EndTime | ... |
---|---|---|---|
GUAM | 2007-01-27T11:15:00Z | 2007-01-27T11:30:00Z | ... |
MASSACHUSETTS | 2007-02-03T22:00:00Z | 2007-02-04T10:00:00Z | ... |
AMERICAN 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 | ... |
... | ... | ... | ... |
En el ejemplo siguiente se muestra el control nulo.
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
Salida
Frutas | Versión | Color |
---|---|---|
Apple | 1 | Rojo |
Plátano | Amarillo | |
Pera | 2 | Verde |
Comparación con max()
La función arg_max() difiere de la función max() de . La función arg_max() permite devolver columnas adicionales junto con el valor máximo y max() solo devuelve el valor máximo.
Ejemplos
arg_max()
Busque la última vez que se produjo un evento con una muerte directa, mostrando todas las columnas de la tabla.
La consulta filtra primero los eventos para incluir solo aquellos en los que hubo al menos una muerte directa. A continuación, la consulta devuelve toda la fila con startTime más reciente (máximo).
StormEvents
| where DeathsDirect > 0
| summarize arg_max(StartTime, *)
La tabla de resultados devuelve todas las columnas de la fila que contiene el valor más alto de la expresión especificada.
StartTime | EndTime | EpisodeId | EventId | Valor | EventType | ... |
---|---|---|---|---|---|---|
2007-12-31T15:00:00Z | 2007-12-31T15:00:00 | 12688 | 69700 | UTAH | Alud | ... |
max()
Encuentra la última vez que ocurrió un evento con una muerte directa.
La consulta filtra los eventos para incluir solo aquellos en los que haya al menos una muerte directa y, a continuación, devuelve el valor máximo de StartTime.
StormEvents
| where DeathsDirect > 0
| summarize max(StartTime)
La tabla de resultados devuelve el valor máximo de StartTime, sin devolver otras columnas para este registro.
max_StartTime |
---|
2007-12-31T15:00:00Z |