0

(null 許容) JSONB フィールドからキー値を抽出したいと考えています。フィールドが NULL の場合、レコードが結果セットに引き続き存在することを望みますが、フィールドは NULL です。

customerテーブル:

id, name, phone_num, address
1, "john", 983, [ {"street":"23, johnson ave", "city":"Los Angeles", "state":"California", "current":true}, {"street":"12, marigold drive", "city":"Davis", "state":"California", "current":false}]
2, "jane", 9389, null
3, "sally", 352, [ "street":"90, park ave", "city":"Los Angeles", "state":"California", "current":true} ]

現在の PostgreSQL クエリ:

select id, name, phone_num, items.city
from customer, 
     jsonb_to_recordset(customer) as items(city str, current bool)
where items.current=true

戻り値:

id, name, phone_num, city
1, "john", 983, "Los Angeles"
3, "sally", 352, "Los Angeles"

必要な出力:

id, name, phone_num, city
1, "john", 983, "Los Angeles"
2, "jane", 9389, null
3, "sally", 352, "Los Angeles"

上記の出力を達成するにはどうすればよいですか?

4

1 に答える 1