json_object_keys:提取JSON对象键
速查结论
json_object_keys(json_object) 是 Spark SQL 中用于返回最外层 JSON 对象的所有键组成的数组的函数。
语法
json_object_keys(json_object)
参数说明
| 参数 | 类型 | 说明 |
|---|---|---|
| json_object | STRING | 一个 JSON 对象字符串。若输入是有效的 JSON 对象,返回最外层所有键的数组;若输入是其他有效 JSON 字符串、无效 JSON 或空字符串,则返回 NULL |
示例
> SELECT json_object_keys('{}');
[]
> SELECT json_object_keys('{"key": "value"}');
["key"]
> SELECT json_object_keys('{"f1":"abc","f2":{"f3":"a", "f4":"b"}}');
["f1","f2"]
常见报错与避坑指南
- 仅返回最外层对象的键,嵌套的内部对象键不会被提取。
- 空对象
'{}'返回空数组[],而无效 JSON 或非对象类型 JSON(如'[1,2]')返回 NULL。 - 返回的键为 STRING 类型的数组,键的顺序与原始 JSON 中的顺序一致。
Since: 3.1.0
📱关注公众号
「数据仓库技术」文章同步更新,不错过每一篇干货

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