transform_keys 函数

适用于:Databricks SQL check marked yes Databricks Runtime

使用 func 函数在 expr 中转换映射中的键。

语法

transform_keys(expr, func)

参数

  • expr:一个 MAP 表达式。
  • func:一个 lambda 函数。

返回

一个 MAP,其中键的类型为 lambda 函数的结果,值的类型为 expr MAP 值。

lambda 函数必须有 2 个参数。 第一个参数表示键。 第二个参数表示值。

lambda 函数为该映射中的每个条目都生成新键。

示例

> SELECT transform_keys(map_from_arrays(array(1, 2, 3), array(1, 2, 3)), (k, v) -> k + 1);
 {2 -> 1, 3 -> 2, 4 -> 3}
> SELECT transform_keys(map_from_arrays(array(1, 2, 3), array(1, 2, 3)), (k, v) -> k + v);
 {2 -> 1, 4 -> 2, 6 -> 3}