您可以尝试以下更正后的语句:

SELECT data_value::jsonb->>'accountName' AS accountName, data_value::jsonb->>'accountNumber' AS accountNumber
FROM t_access_itemdetail
WHERE data_value->>'accountName' IS NOT NULL AND data_value->>'accountNumber' IS NOT NULL;

在原语句中,data_value::jsonb->'accountName'data_value::jsonb->'accountNumber' 的写法是不正确的。应该使用 ->> 运算符来获取 JSON 字段的值。

此外,您还需要更正 WHERE 子句中的条件,应该使用 data_value->>'accountName'data_value->>'accountNumber' 来判断 JSON 字段的值是否为 NULL

注意:这个更正后的语句假设 t_access_itemdetail 表中的 data_value 列的数据类型为 jsonb。如果 data_value 的数据类型是 json,则需要将 jsonb 替换为 json

select data_valuejsonb-accountName as accountName data_valuejsonb-accountNumber as accountNumberfrom t_access_itemdetailwhere accountName is not null and accountNumber is not null这个语句报错请帮我改成正确的语句

原文地址: https://www.cveoy.top/t/topic/icHr 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录