max_by
集計関数
適用対象: Databricks SQL
Databricks Runtime
グループ内の expr1
の最大値に関連付けられている expr2
値を返します。
構文
max_by(expr1, expr2) [FILTER ( WHERE cond ) ]
この関数は、 句を使用して OVER
として呼び出すこともできます。
引数
expr1
: 任意の型の式。expr2
: 順序付けできる型の式。cond
: 集計に使用される行をフィルター処理するブール式 (省略可能)。
戻り値
結果の型は、expr1
の型と一致します。
もしSTRING
ならば。
expr2
がグループ内で一意でない場合、この関数は非決定論的です。
注
特定の STRING
照合順序 (UTF8_LCASE
など) の場合、結果も非決定論的である可能性があります。
例
> 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)