这是我正在使用的:
创建表测试(id INT,数据 JSON);
插入测试值
(1, '[{"key": 2}, {"key": 1}]'),
(2, '[{"key": 3}]'),
(3, '[{"key": 1}]');
从测试中选择 *;
从测试中选择 id 1 == ANY( json_array_elements(data) ->> 'key');
我要做的是选择列中任何 json 对象data的键值key为1. 我试图提取行1和3. 请注意,我不确定子句==之前的相等比较是否正确。ANY
当我运行上述内容时,我收到以下错误:ERROR: set-returning functions are not allowed in WHERE