[英]How to get specific objects value from JSONB array in PostgreSQL?
我有一個名為people
的列,它的類型是JSONB 。
這是示例數據( 1 行):
{"addresses": [{"street":"cubuklu", "valid?": "true"}
{"street":"beykoz", "valid?":"false"}
{"street":"kavacik", "valid?": "true"} ]}
我想獲得valid?
街道的列表valid?
所有行的真值。
結果:
cubuklu
kavacik
......(data from other rows)
我能夠列出無法過濾值的數組。
您需要取消嵌套數組,然后對結果進行過濾:
select adr.address ->> 'street'
from the_table t
cross join jsonb_array_elements(t.people -> 'addresses') as adr(address)
where adr.address ->> 'valid?' = 'true'
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.