如何让下面的查询返回“true”以反映我需要右侧数组中的至少一个值包含在左侧数组中?
SELECT '["fun", "movies"]'::jsonb @> '["fun", "movies","x"]'::jsonb;
上面的返回false
(因为'x'不在左边的数组中)。
我已经尝试过?|
运营商链接
SELECT '["fun", "movies"]'::jsonb ?| '["fun", "movies","x"]'::jsonb;
但 postgres 返回错误
错误:运算符不存在:jsonb?| jsonb LINE 2: SELECT
'["fun", "movies"]'::jsonb ?| '[“乐趣”、“电影”、“x...提示:没有运算符与给定名称和参数类型匹配。您可能需要添加显式类型转换。SQL 状态:42883 字符:147