[英]Querying an array within an array with Postgres JSONB query
我在Postgres 9.4 db的字段中有一些JSON,我想查找给定名称为特定值的行,其中该字段名为model
,JSON结构如下:
{
"resourceType": "Person",
"id": "8a7b72b1-49ec-43e5-bd21-bc62674d9875",
"name": [
{
"family": [
"NEWMAN"
],
"given": [
"JOHN"
]
}
]
}
所以我尝试了这个: SELECT * FROM current WHERE model->'name' @> '{"given":["JOHN"]}';
(以及其他各种猜测),但与上述数据不匹配。 我应该怎么做?
select t.*
from current t,
jsonb_array_elements(model->'name') names
where names->'given' ? 'JOHN'
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.