我正在努力使用正确的语法来扁平化一些数据
我有一个dlt
表,表中有一列(为了示例,名为lorem
),其中每一行如下所示:
[{"field1": {"field1_1": null, "field1_2": null}, "field2": "blabla", "field3": 13209914, "field4": {"field4_1": null, "field4_2": null}, "field5": 4}, ...]
我希望我的输出基于第一个表创建一个新表,该表基本上为我在上面共享的数组中的每个元素创建一行
表应该如下所示: |场1|1 |场1|2 |场2 |场3 |场4|1 |场4|2 |场5| |:-------|:-------|:-----|:-----|:-------|:-------|:------| |空|空| blabla | 13209914 |空|空| 4 |
但是,当我像这样分解时:select(explode("lorem"))
我没有得到想要的输出,相反,我只得到字段0和分解的字段以及除字段4内的所有内容之外的其他字段
我的问题是,我应该用什么其他方式来平展这些数据? 如果需要,我可以提供一个更清晰的例子
使用
withColumn
添加所需的其他列。一个简单的例子:我的结果:
相关问题 更多 >
编程相关推荐