我有两个更新语句,我们在SQL服务器上运行它们就像
UPDATE dbo.c_Account SET Ct = Ct-1 Where Acc = 'IT' OR Acc = 'gt' UPDATE dbo.c_Account SET Ct = Ct-3 Where Acc = 'ABC'
是否有可能在一个语句上进行两次更新
你可以这样组合:
UPDATE t SET Ct = Ct - CASE WHEN t.Acc IN ('IT','gt') THEN 1 ELSE 3 END FROM dbo.c_Account t WHERE t.Acc IN ('IT','gt','ABC')
没有什么好处,除了它现在将作为一个原子操作运行,并且不需要外部事务.