案例计算结果是来自临时表的正确更新表

时间:2014-01-29 12:39:22

标签: sql sql-server

我想使用CASE并查看列= total然后使用今天的日期更新表。

UPDATE dbo.Audit 
       SET AUD_CloseDate =
       CASE
       WHEN Scored + NA = Total THEN GETDATE() 

最后我想查看col1 + col2 = col3,如果是,那么将我的列更新为今天的日期,如果已经有了日期,那么什么都不做。

评分+ NA =总计< ----他们来自临时表

2 个答案:

答案 0 :(得分:0)

你几乎准备好了:

UPDATE dbo.Audit 
SET AUD_CloseDate = CASE
                        WHEN Scored + NA = Total THEN GETDATE() 
                    END
WHERE AUD_CloseDate IS NULL

答案 1 :(得分:0)

您无需在所有行上运行更新,只需过滤您要更新的行:

update dbo.audit
set    aud_closedate = getdate()
where  scored + na = total