json - 展开 JSON 对象数组以使用 PostgreSQL 记录
问题描述
我正在尝试使用 PostgreSQL 扩展 JSON 中的对象数组。
表联系人(id int,数据 json);
1, {'firstName': 'John', 'lastName': 'Doe', 'addresses': [{'street': '1 Heaven St.', city: 'Wonderland'}, {'street': '3 Hell St.', city: 'Scarycity'}] }
2, {'firstName': 'Shiv', 'lastName': 'Durham', 'addresses': [{'street': '1 Sugar St.', city: 'Sweet City'}] }
我想把它变成视图
contact_id|address |
1 |{'street': '1 Heaven St.', city: 'Wonderland'} |
1 |{'street': '3 Hell St.', city: 'Scarycity'} |
2 |{'street': '1 Sugar St.', city: 'Sweet City'} |
我尝试了一些本机功能,但没有得到想要的结果。
解决方案
select
id as contact_id,
json_array_elements(data->'addresses') as address
from contacts;
推荐阅读
- python - 从另一个 Dataframe 填充矩阵
- r - 创建一个具有唯一 ID 号的新列
- ios - Flutter url_launcher 不适用于 IOS(在真实设备上测试)
- linux - 使用 -fPIC 或 -fPIE 构建静态库
- flutter - 如何将 onPressed 添加到 FloatingActionButton 颤振中的每个弹出按钮
- javascript - 用于刷新令牌的 axios 拦截器
- flutter - dart本身可以处理方法通道吗
- angular - 使用 Angular 订阅事件的潜在问题
- reactjs - 如何处理来自 react-router-dom 的多个开关
- html5-video - 播放和预加载视频之间的 HTML5 优先级