2011-08-05 114 views
0

我有兩個表名爲ASI和呼叫和表中的數據是這樣的:更新語句

呼叫

ID Flag Created_ON 
12 1  2011-08-05 11:48:09.477 
15 1  2011-08-05 11:48:09.477 
18 1  2011-08-05 11:48:09.477 
20 1  2011-08-05 11:48:09.477 
25 1  2010-08-12 14:05:11.000 

ASI

ID Open_Date 
12 2010-07-02 09:40:00.000 
20 2010-08-12 14:05:11.000 
18 2010-08-09 15:26:43.000 

我想更新的標誌柱在ASI表中不存在ID的情況下,用0調用表。在上面的例子中,我想ID的15和25爲0

輸出:

ID Flag Created_ON 
12 1  2011-08-05 11:48:09.477 
15 0  2011-08-05 11:48:09.477 
18 1  2011-08-05 11:48:09.477 
20 1  2011-08-05 11:48:09.477 
25 0  2010-08-12 14:05:11.000 

回答

4
UPDATE A 
SET A.Flag = 0 
FROM Call A 
LEFT JOIN ASI B 
ON A.Id = B.Id 
WHERE B.Id IS NULL 
+0

太感謝你了! – Peter

0
update call set flag=0 where id not in (
    select distinct id from asi) 
0
UPDATE Call 
SET Flag = 0 
WHERE ID NOT IN (SELECT ID FROM ASI)