filter 函数

适用于:check marked yes Databricks SQL check marked yes Databricks Runtime

使用函数 func 筛选 expr 中的数组。

语法

filter(expr, func)

参数

  • expr:一个数组表达式。
  • func:一个 Lambda 函数。

返回

结果类型与 expr 相同。

lambda 函数可以使用一个或两个参数,其中第一个参数表示元素,第二个参数表示数组中的索引。

示例

> SELECT filter(array(1, 2, 3), x -> x % 2 == 1);
 [1,3]
> SELECT filter(array(0, 2, 3), (x, i) -> x > i);
 [2,3]
> SELECT filter(array(0, null, 2, 3, null), x -> x IS NOT NULL);
 [0,2,3]