【发布时间】:2019-10-14 22:02:50
【问题描述】:
我在 Postgres 9.6 中有一个 jsonb 列,其中包含以下形式的 JSON 数组:
[
{
"courses": { "course-1": { "graduated": false }, "course-5": { "graduated": true } }
},
{
"courses": { "course-6": { "graduated": false } }
}
]
我想通过一个查询找到所有注册course-1 或course-12 的用户。也就是说,对于 jsonb 数组中的任何条目,courses 对象中具有 course-1 或 course-12 的用户。
我已经尝试了很多类似以下的方法,当然这不起作用:
select enrollment_info from users where (enrollment_info @> '["courses" ?| array['course-1', 'course-12']]')
关于如何解决此问题的任何建议?谢谢!
【问题讨论】:
标签: sql arrays json postgresql jsonb