2012-01-10 80 views
0

我想使用CASE语句在另一个字段为NULL时分配NULL值。如何用CASE语句分配NULL值?

到目前为止,这是我得到:

UPDATE PunchintervalFinal 
SET INDTTIME_LUNCH = (SELECT CASE 
            WHEN PunchintervalFinal.INDTTIME2 IS NULL THEN 
            NULL 
           END 
         FROM PUNCHBRIDGE A 
         WHERE A.EMPLOYEE = PunchintervalFinal.EMPLOYEE 
           AND A.PUNCHDATE = PunchintervalFinal.PUNCHDATE 
           AND PunchintervalFinal.EMPLOYEE = '500018') 
+4

有一个名为按钮**“Caps Lock键” **请转它关闭... – gdoron 2012-01-10 19:23:09

+2

拥有全部大写就像在互联网上尖叫。编辑你的问题,并使其可读。还要确保将代码格式化为代码(编辑器上方的“{}”按钮)。可读的问题有更高的获得答案的机会。 – 2012-01-10 19:23:10

+1

如果'PunchintervalFinal.INDTTIME2'不是NULL,你想要什么? – bfavaretto 2012-01-10 19:24:46

回答

2

这应该做你正在尝试做的:

UPDATE PunchintervalFinal 
SET INDTTIME_LUNCH = NULL 
FROM PunchintervalFinal 
    INNER JOIN PUNCHBRIDGE A ON A.EMPLOYEE = PunchintervalFinal.EMPLOYEE 
WHERE PunchintervalFinal.EMPLOYEE = '500018' 
    AND A.PUNCHDATE = PunchintervalFinal.PUNCHDATE 
    AND PunchintervalFinal.INDTTIME2 IS NULL 
+0

谢谢伟大的工作... – 2012-01-10 19:35:54

+0

@JorgeVillatoro很高兴我可以帮助! – 2012-01-10 19:39:40

+0

@JorgeVillatoro请不要忘记将答案标记为将来参考的正确答案 – 2012-01-10 19:42:25