update contentpagenav
set active = case
when active = 0 then active = 1
when active = 1 then active = 0
end
我收到以下错误
Msg 102,Level 15,State 1,Line 3 '='附近的语法不正确。
答案 0 :(得分:6)
无需在当时重新分配活动,“set active =”正在这样做。
update contentpagenav
set active = case
when active = 0 then 1
when active = 1 then 0
end
答案 1 :(得分:0)
执行此操作的简单方法不是针对案例:
UPDATE contentpagenav SET active = 1-active;
如果您正在简化您的问题(您出于某种原因需要使用CASE):
UPDATE contentpagenav SET active = CASE active
WHEN 1 THEN 0
ELSE THEN 1
END;
如果有两个以上可能的值:
UPDATE contentpagenav SET active = CASE active
WHEN 1 THEN 0
WHEN 0 THEN 1
WHEN 2 THEN ...
ELSE ...
END;