我正在尝试根据 table_1 和 table_2 中的值之间的一些比较来更改 table_1 上字段的值。因此,我在 UPDATE 语句中使用了 CASE 语句。 但是使用下面的代码,我收到一条错误消息:“语法错误”。
UPDATE table_1
SET value_1 = CASE
WHEN table_1.x = table_2.y THEN 'OK'
WHEN table_1.x <> table_2.y THEN 'NOT OK'
END
FROM table_2
有人可以帮忙吗?
答案 0 :(得分:0)
SQLite在from
中不支持update
。您需要使用相关的子查询:
update table_1
set value_1 = (case when exists (select 1 from table_2 where table_1.x = table_2.y)
then 'OK' else 'NOT OK'
end);