鉴于以下json记录:
记录1:
{"Name":{"type":"String", "value":"Person1"}, "Spouse":{"Type":"foreign-key", "value":"123"}}
记录2:
{"Name":{"type":"String", "value":"Person2"}, "Sibling":{"Type":"foreign-key", "value":"345"}}
json查询用于获取键"value“的所有值,其中"Type”是“外键”,而不考虑父键(“配偶”/“兄弟”)?
根据这两项记录,结果应为"123“、"345”。
发布于 2016-10-26 18:41:13
使用每一个函数和'contains' operator (@>)找到解决方案
select
jt.id as jt_id,
(kv.value -> 'value')::text::int as entity_id
from
json_table jt,
jsonb_each(jt.values) kv
where
kv.value @> '{"Type":"foreign-key"}'https://stackoverflow.com/questions/40248261
复制相似问题