跳到主要内容

map_from_arrays:数组转映射

速查结论

map_from_arrays(keys, values) 是 Spark SQL 中用于使用给定的键数组和值数组创建一个映射的函数。

语法

map_from_arrays(keys, values)

参数说明

参数类型说明
keysARRAY<K>键数组,所有元素不应为 NULL
valuesARRAY<V>值数组,与键数组一一对应

Examples

> SELECT map_from_arrays(array(1.0, 3.0), array('2', '4'));
{1.0:"2",3.0:"4"}

常见报错与避坑指南

  • 键数组中有 NULL 的报错:如果键数组包含 NULL 元素,map_from_arrays 会抛出 Cannot use null as map key 错误。需要提前使用 array_distinctfilter 处理 NULL。
  • 两个数组长度必须相等:如果键数组和值数组的长度不一致,会触发错误。可以使用 size() 事先检查两者的长度。

Since: 2.4.0

📱关注公众号

「数据仓库技术」文章同步更新,不错过每一篇干货

微信公众号二维码
💬加群交流

备注「数据仓库技术」加入社群,每日一道大厂SQL真题

交流微信二维码

你可能还想看