错误:Postgres SQL 中“[”处或附近的语法错误

问题描述 投票:0回答:1
UPDATE s SET sb = sb || ('{"filded": [{"@value": '|| sb@>>'{filded,0, @value}'::integer + 1 ||'}],"lastFailure ": '[{"@t": "DateTime", "@value": "$1"}],ln": '[{"@type": "DateTime", "@value": "$1"}])::jsonb WHERE sbi=$2

这是我试图在 thi pgAdmin 中运行的 postgres sql 查询,但它给出了错误

ERROR:  syntax error at or near "["

LINE 1: ...d,0, @value}'::integer + 1 ||'}],"lastFailure": '[{"@t": "D... ^ SQL 状态:42601 性格:116

请为此提供解决方案

postgresql postgresql-9.4
1个回答
0
投票

只是对你的混乱的猜测:

UPDATE s
SET    sb = sb
         || ('{"filded":[{"@value":'
         || (sb #>> '{filded,0,@value}')::integer + 1
         || '}], "lastFailure":[{"@t":"DateTime", "@value":"$1"}], "ln":[{"@type":"DateTime", "@value":"$1"}]}')::jsonb
WHERE  sbi = $2;
© www.soinside.com 2019 - 2024. All rights reserved.