查询数组包含数组Postgres的任何元素

时间:2019-02-13 16:31:38

标签: node.js postgresql

我有一个名为category的jsonb字段,它是一个类别数组。我希望查询返回所有类别包含数组任何元素的行。例如

ID | categories
1    ["Pizza", "Italian"]
2    ["Fast Food", "Hamburger"]
3    ["Pizza"]

我想查询所有类别中包含意大利或汉堡的地方。问题在于要查找的类别数是可变的。在查询中,我可能要搜索2个类别,在另一个查询中,我可能想要搜索5。

下面的代码可以正常工作,但是如何使数组变量中的项目数呢?

select * from places where categories @> ANY(array['Pizza','Italian']::jsonb) order by id LIMIT 50 OFFSET 0

0 个答案:

没有答案