我正在测试一个多更新的SET col1 = col2 WHEN col1 != col2
我不明白,为什么它不起作用。我在输出中只看到有关Row matched的信息,没有看到有关受影响行的信息
UPDATE db.t1
JOIN db.t2
ON t1.id = t2.id
JOIN db.t3
ON t2.id = t3.id
SET col1 = CASE
WHEN col1 != col2
THEN col1 = col2
END
WHERE t1.id = t2.id AND t3.id = t2.id and t1.id = 2发布于 2018-12-26 00:55:49
对这件事要有信心..THEN col1 = col2 ..在这种情况下,代码被评估为逻辑条件(结果可以是0或1)。
如果您希望根据案例结果将col2设置为col1,那么您应该使用
UPDATE db.t1
JOIN db.t2 ON t1.id = t2.id
JOIN db.t3 ON t2.id = t3.id
SET col1 = CASE
WHEN col1 != col2
THEN col2
END
WHERE t1.id = t2.id
AND t3.id = t2.id
AND t1.id = 2https://stackoverflow.com/questions/53923922
复制相似问题