我有一个表叫houses
,它有两列id
并呼吁details
一个jsonb列。该details
列具有以下结构:
[{ kind: "flat", price: 100 }, { kind: "circle", price: 10 }]
我想所有这些houses
塔具有至少一个对象,其中details
是kind
的flat
。
这是我曾尝试:
select *
FROM houses
WHERE "details"->>'kind' = 'flat'
您可以使用jsonb_array_elements
select h.* from houses h cross join lateral
jsonb_array_elements(details) as j
where j->>'kind' = 'flat'