device_id | device
-----------------------------
9809 | { "name" : "printer", "tags" : [] }
9810 | { "name" : "phone", "tags" : [{"count": 2, "price" : 77}, {"count": 3, "price" : 37} ] }
Run Code Online (Sandbox Code Playgroud)
对于包含数组“标签”的 jsonb 列“设备”上的以下 postgres SQL 查询:
SELECT t.device_id, elem->>'count', elem->>'price'
FROM tbl t, json_array_elements(t.device->'tags') elem
where t.device_id = 9809
Run Code Online (Sandbox Code Playgroud)
device_id 是主键。
我有两个问题不知道如何解决: