Condividi tramite


max_by funzione di aggregazione

Si applica a:segno di spunta sì Databricks SQL segno di spunta sì Databricks Runtime

Restituisce il valore di un expr1 associato al valore massimo di expr2 in un gruppo.

Sintassi

max_by(expr1, expr2) [FILTER ( WHERE cond ) ]

Questa funzione può anche essere richiamata come funzione window usando la clausola OVER.

Argomenti

  • expr1: espressione di qualsiasi tipo.
  • expr2: espressione di un tipo che può essere ordinato.
  • cond: espressione booleana facoltativa che filtra le righe usate per l'aggregazione.

Valori restituiti

Il tipo di risultato corrisponde al tipo di expr1.

Se STRING.

Questa funzione non è deterministica se expr2 non è univoca all'interno del gruppo.

Nota

Per alcune collazioni STRING, come UTF8_LCASE, il risultato può anche essere non deterministico.

Esempi

> SELECT max_by(x, y) FROM VALUES (('a', 10)), (('b', 50)), (('c', 20)) AS tab(x, y);
 b

> SELECT max_by(x, y COLLATE UTF8_LCASE) FROM VALUES (('a', 'X')), (('b', 'x')), (('c', 'v')) AS tab(x, y);
 a (or b)