UPDATE tab1
SET col = 1
FROM tab1
LEFT JOIN tab2 ON tab2.ID = tab1.ID
WHERE tab2.ID IS NULL
我在哪里将ELSE col = 0
放在此查询中?
答案 0 :(得分:4)
UPDATE tab1
SET col = CASE WHEN tab2.ID IS NULL THEN 1 ELSE 0 END
FROM tab1
LEFT JOIN tab2 ON tab2.ID = tab1.ID
我假设你希望当tab2.ID为NULL时col为1,而当它不是时为0。所以你需要做两件事。使用案例表达式。同时删除where表达式,这样就不会将结果表限制为只与tab2无关的tab1行