last_value 聚合函数

适用于:选中标记为“是” Databricks SQL 选中标记为“是” Databricks Runtime

返回一组行的最后一个 expr 值。 该函数是聚合函数的last同义词。

语法

last_value(expr [, ignoreNull] ) [FILTER ( WHERE cond ) ] [ IGNORE NULLS | RESPECT NULLS ]

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

争论

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

退货

结果的类型与expr匹配。

此函数为非确定性函数。

示例

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

> SELECT last_value(col) FROM VALUES (10), (5), (NULL) AS tab(col);
 NULL

> SELECT last_value(col, true) FROM VALUES (10), (5), (NULL) AS tab(col);
 5

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

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