Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für:
Databricks SQL
Databricks Runtime
Gibt den Wert eines Ausdrucks (expr1) zurück, für den der Wert von expr2 in einer Gruppe maximal ist
Syntax
max_by(expr1, expr2) [FILTER ( WHERE cond ) ]
Diese Funktion kann auch mithilfe der -Klausel als OVER aufgerufen werden.
Argumente
-
expr1: Ein Ausdruck beliebigen Typs -
expr2: Ein Ausdruck eines Typs, der geordnet werden kann. -
cond: Ein optionaler boolescher Ausdruck, der die für die Aggregation verwendeten Zeilen filtert.
Gibt zurück
Der Ergebnistyp stimmt mit dem Typ von expr1 überein.
Wenn STRING.
Diese Funktion ist nicht deterministisch, wenn expr2 innerhalb der Gruppe nicht eindeutig ist.
Hinweis
Bei bestimmten STRING Sortierungen, wie z. B. UTF8_LCASE, kann das Ergebnis auch nicht deterministisch sein.
Beispiele
> 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)