SQL Server:更新列

时间:2011-09-13 00:29:27

标签: sql sql-server

我有一个TblA

ID Match Code Status
1   001   A    
2   001   B   
3   002   A
4   003   A
5   003   V
6   004   A
7   004   B

我希望根据以下内容填充状态'FAIL': 每个匹配号码都应存在代码“A”和“B”。对于001,002,003,A,B都应该存在。如果没有,请将整场比赛都失败。预期表格:

ID Match Code Status
1   001   A    NULL
2   001   B    NULL
3   002   A    FAIL
4   003   A    FAIL
5   003   V    FAIL
6   004   A    NULL
7   004   B    NULL

谢谢!

1 个答案:

答案 0 :(得分:4)

你走了:

update [TblA]
set [Status] = 'FAIL' where 
Match NOT in
(select match from tblA where Code = 'A'
intersect
select match from tblA where Code = 'B');