考虑下表
| lang_codes text[]| lang_codes text[] |
| --| ------------ |
| {eng,fre}| {eng,fre} |
| 关于我们| {eng} |
我需要从表中选择与输入数组相交的所有行,但仅当lang_codes
中的所有项都存在于输入数组中时,例如:
- 如果输入数组包含[eng,fre,格尔],则返回所有行
- 而[eng,格尔]不会返回第一条记录,因为它需要两个代码都出现在输入数组中。
我尝试了&&操作数,但它返回了所有行:
select * from my_table where lang_codes && ARRAY['eng','ger'];
字符串
从另一方面@>操作数,仅当数组完全匹配时返回
1条答案
按热度按时间ac1kyiln1#
<@
operator应该可以做到这一点:字符串
SQL小提琴