【发布时间】:2021-07-04 14:08:57
【问题描述】:
我有一张表,里面装满了 json 对象。只有一列“数据”。
我想将此表转换为一个包含 json 对象中所有键的多列的表。
例如,
现在我的桌子是这样的:
| data |
|---|
| {'key1': 'value1', 'key2': 'value2'} |
| {'key1': 'value3', 'key2': 'value4'} |
但我想要这样:
| key1 | key2 |
|---|---|
| value1 | value2 |
| value3 | value4 |
我不是试图以这种方式查询它,我想以我上面显示的格式完全创建一个新表。
我可以试试跑步:
INSERT INTO new_table
SELECT data -> 'key1', data -> 'key2'
FROM old_table
但由于我的 json 对象有数百列,这可能效率低下。有没有更有效的方法来做到这一点?感谢您提供任何帮助或建议。
【问题讨论】:
标签: postgresql