我有colA,它是带有数组的jsonb列。以下是一些示例行:
["postgresql", "mysql", "elasticsearch"]
["python", "perl"]
我正在尝试搜索数组是否具有“ postgresql”或“ mysql”:
SELECT 'colA @> ANY (ARRAY ['["postgresql"]', '["mysql"]']::jsonb[])' FROM mytable
返回第一行。现在,由于用户将传递数据,因此我需要参数化查询:
SELECT 'colA @> ANY (ARRAY ['[$1]', '[$2]']::jsonb[])' FROM mytable
但是我得到了
ERROR: syntax error at or near "["
答案 0 :(得分:0)
您可以在review_text = ['review_1_text', 'review_2_text ', 'review_3_text ']
review_label = ['positive','negative','negative']
子句中用cross join
来jsonb_array_elements_text()
的表,该表允许您根据获得的相应值来过滤from
子句中的记录。
where