これは完全に機能する私の更新ステートメントです。表 1 と表 2 に同じシリアル番号が含まれている場合、表 1 は「はい」で更新され、含まれていない場合は「いいえ」で更新されます。
UPDATE dbo.table1
SET [Match] = CASE WHEN dbo.table2.[Serial Number] IS NOT NULL
THEN 'yes' ELSE 'no' END
FROM dbo.table1 LEFT OUTER JOIN dbo.table2
ON dbo.table2.[Serial Number] = dbo.table1.[Serial Number]
AND dbo.table1.[Date] = 'JAN11' AND
dbo.table1.[Install] = 'new' AND
dbo.table2.[Date] = 'JAN11' AND
dbo.table2.[Install] = 'new'
問題は現在、呼び出されていない表1のすべてがnoで更新されているため、最初にselectステートメントを呼び出すことです...このようなものです
select * from table1 where [Date] = 'JAN11' AND [Install] = 'new'
更新内にネストして、関連する列のみが no または yes で更新されるようにします...