我想使用set和where来更新一列的值。
我做了像
这样的查询update Students set Studentid =case
when Studentid=1 then class= 10
when studentid = 3 then class=9
when studentid=2 and studentid =4 then class=8
End
但我猜它不起作用。请帮帮我。
答案 0 :(得分:2)
我认为这就是你想说的:
UPDATE Students
SET class = CASE WHEN Studentid = 1 THEN 10
WHEN Studentid = 3 THEN 9
WHEN Studentid IN (2, 4) THEN 8 END
WHERE Studentid IN (1, 2, 3, 4);
我添加了WHERE
子句,以确保我们只触及实际受更新逻辑影响的记录。