我有一个x列,其数据类型为jsonb
,值看起来像:
[
[{"string":"whateverstring1"}],
[{"string":"whateverstring2"}]
]
如何返回数组的每个元素?
类似这样的事情: “ whateverstring1 ”,“ whateverstring2 ”
答案 0 :(得分:4)
SELECT jsonb_array_elements(jsonb) -> 0 -> 'string'
FROM (
SELECT '[[{"string":"whateverstring1"}],[{"string":"whateverstring2"}]]'::jsonb
) s
jsonb_array_elements
将每个元素提取到一行中-> 0
给出嵌套数组的第一个元素{"string":"whateverstring1"}
-> 'string'
给出元素的值