Saltar al contenido principal

argMax

Introducido en: v1.1.0 Calcula el valor de arg correspondiente al valor máximo de val. Si hay varias filas con el mismo val máximo, no es determinista cuál de los arg asociados se devuelve. Tanto arg como max se comportan como funciones de agregación: ambas omiten Null durante el procesamiento y devuelven valores distintos de Null si hay valores distintos de Null disponibles. Ver también Sintaxis
argMax(arg, val)
Argumentos Valor devuelto Devuelve el valor de arg que corresponde al valor máximo de val. El tipo coincide con el de arg. Ejemplos Uso básico
Query
SELECT argMax(user, salary) FROM salary;
Response
┌─argMax(user, salary)─┐
│ director             │
└──────────────────────┘
Ejemplo ampliado con tratamiento de NULL
Query
CREATE TABLE test
(
    a Nullable(String),
    b Nullable(Int64)
)
ENGINE = Memory AS
SELECT *
FROM VALUES(('a', 1), ('b', 2), ('c', 2), (NULL, 3), (NULL, NULL), ('d', NULL));

SELECT argMax(a, b), max(b) FROM test;
Response
┌─argMax(a, b)─┬─max(b)─┐
│ b            │      3 │
└──────────────┴────────┘
Uso de Tuple en los argumentos
Query
SELECT argMax(a, (b,a)) FROM test;
Response
┌─argMax(a, tuple(b, a))─┐
│ c                      │
└────────────────────────┘
Última modificación el 10 de junio de 2026