sql - Psql查询将json数组转换为行

标签 sql json postgresql rows

我有一个json数组-

[{id:1,quantity:100},{id:2,quantity:25},{id:3,quantity:68}]

如何使用 postgres 中的查询将其转换为以下内容 -

Id     |Quantity
-----------------
1      |100
2      |25
3      |68

如果可能的话,我想知道怎么做

最佳答案

使用jsonb_array_elements()

select t ->> 'id' as id, t ->> 'quantity' as quantity
from jsonb_array_elements('[{"id":1,"quantity":100},{"id":2,"quantity":25},{"id":3,"quantity":68}]') as t

在线示例:https://rextester.com/YBUER58387

关于sql - Psql查询将json数组转换为行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54746324/

相关文章:

postgresql - 如何设置 pgx 以从数据库中获取 UTC 值?

python - 将 Access 查询转换为 Python 脚本

mysql - 如何查询空表以检查是否为空?

sql - 在 select 中使用 regexp_matches 查询返回空结果集

json - 如何将 HL7 v2.x 消息转换为 FHIR JSON?

algorithm - 前缀相似度搜索

sql - 在字段中使用 (-)

javascript - 如何从 JSON 继承获取 JavaScript 对象?

mysql - mysql中如何用{}替换null值?

ruby-on-rails - ActiveRecord::JDBCError: 错误:无法打开扩展控制文件