我正在尝试一次更新2条记录中的2列中的值。
INSERT .... ON DUPLICATE ... UPDATE ...
不起作用。
我已阅读有关主题的帖子但该解决方案对我不起作用,所以这是我的问题。我哪里错了?
代码:
[7.4.2017 10:21:07] Executing Query:
UPDATE sales
SET (ind,otst) = CASE id
WHEN 7795 THEN (759900,2.2)
WHEN 7799 THEN (779900,5)
ELSE (ind,otst)
END
WHERE id IN(7795, 7799) and recNo>1;
错误:
[7.4.2017 10:21:09]值为空 - 本机错误:30359
P.S。当我在多行中更改单个列中的值时,它可以正常工作。
答案 0 :(得分:0)
[7.4.2017 11:33:17]执行查询:
UPDATE sales
SET ind = CASE id
WHEN 7795 THEN 759900
WHEN 7799 THEN 779900
ELSE ind END,
otst = case id
WHEN 7795 THEN 99
WHEN 7799 THEN 77
ELSE otst END
WHERE id IN(7795, 7799) and recNo>1;
[7.4.2017 11:33:17]好的。 [7.4.2017 11:33:17] 3排受影响。
非常感谢StanislavL