我使用点击查询来更新多行中的列:
UPDATE table SET col =
(case
when id = 1 then 10
when id = 2 then 20
when id = 3 then 30
end)
我知道如果我想增加col
值,我应该这样做:
UPDATE table SET col = col+10
但它不能用于更新多个行 我也尝试过:
when id = 1 then (@col := @col + 10)
但这也不起作用 任何人都知道如何将这两者相互连接,并且在mysql的多行中增加一列的值?
答案 0 :(得分:0)
寻找这个?
UPDATE table SET col = if(@col is null, @col := col+10, @col)
还是这个?
UPDATE table SET col = if(id = 1, col+10, if(id = 2, col + 20, col + 30))
答案 1 :(得分:0)
如果我理解你的话:
UPDATE table SET col = col +
(case
when id = 1 then 10
when id = 2 then 20
when id = 3 then 30
end)