Dela via


min_by mängdfunktion

Gäller för:markerad ja Databricks SQL markerad ja Databricks Runtime

Returnerar värdet för en expr1 associerad med minimivärdet expr2 för i en grupp.

Syntax

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

Den här funktionen kan också anropas som en -fönsterfunktion med hjälp av OVER-satsen.

Argument

  • expr1: Ett uttryck av valfri typ.
  • expr2: Ett uttryck av en typ som kan ordnas.
  • cond: Ett valfritt booleskt uttryck som filtrerar de rader som används för aggregering.

Returer

Resultattypen matchar typen av expr1.

Den här funktionen är icke-deterministisk om expr2 den inte är unik i gruppen.

Not

För vissa STRING sorteringar, till exempel UTF8_LCASE, kan även resultatet vara icke-deterministiskt.

Exempel

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

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