我有arr 类型的列array。
我需要获取行,其中arr列包含值s
该查询:
SELECT * FROM table WHERE arr @> ARRAY['s']
给出错误:
错误:运算符不存在:字符变化[] @>文本[]
为什么不起作用?
ps我知道any()运算符,但是为什么不起作用@>?
我有arr 类型的列array。
我需要获取行,其中arr列包含值s
该查询:
SELECT * FROM table WHERE arr @> ARRAY['s']
给出错误:
错误:运算符不存在:字符变化[] @>文本[]
为什么不起作用?
ps我知道any()运算符,但是为什么不起作用@>?
Answers:
请注意,这也可能起作用:
SELECT * FROM table WHERE s=ANY(array)
s @> ARRAY['constant'::varchar],更短。