first_value 聚合函数

适用于:勾选“是” Databricks SQL 勾选“是” Databricks Runtime

返回一组行的第一个 expr 值。 此函数是 first 聚合函数的同义词。

语法

first_value(expr[, ignoreNull]) [FILTER ( WHERE cond ) ]

还可以使用 OVER 子句将此函数作为窗口函数调用。

参数

  • expr:任何类型的表达式。
  • ignoreNull:默认为 false 的可选 BOOLEAN 文本。
  • cond:一个可选的布尔表达式,可筛选用于聚合的行。
  • IGNORE NULLSRESPECT NULLS:当使用 IGNORE NULLSignoreNulltrue 时,会忽略为 NULL 的所有 expr 值。 默认为 RESPECT NULLS

返回

结果的类型与 expr 相同。

此函数为非确定性函数。

示例

> SELECT first_value(col) FROM VALUES (10), (5), (20) AS tab(col);
 10

> SELECT first_value(col) FROM VALUES (NULL), (5), (20) AS tab(col);
 NULL

> SELECT first_value(col, true) FROM VALUES (NULL), (5), (20) AS tab(col);
 5

> SELECT first_value(col) IGNORE NULLS FROM VALUES (10), (5), (NULL) AS tab(col);
 5

> SELECT first_value(col) FILTER (WHERE col > 5) FROM VALUES (5), (20) AS tab(col);
 20