查询删除记录
问题描述:
我有一个表格,包含以下字段。我的要求是当 时将表中的记录删除1.标记设置为'否' 2.对于标题,在一个记录中如果标记设置为“否”,并且在另一记录中如果设置为'是'。删除这两个记录。例如TH-123,在第1条记录中,标志设置为“否”,并且在第4条记录标志设置为“是”,删除两条记录。 3.对于标题,如果该标志设置为“否”,则在一个记录中,如果标题设置为“(空格)”,则在另一个记录中。删除这两个记录。例如TH-344。删除这两个记录。查询删除记录
Title Flag
TH-123 No
TH-344
TH-543 No
TH-123 Yes
Th-344 No
Th-098 Yes
Th-876 Yes
Th-098 Yes
Th-512 No
所以现在我期待一个结果,以下记录。
Th-098 Yes
Th-876 Yes
Th-098 Yes
我已经完成了2个查询。
update temp1 set [flag] = 'No' WHERE Title IN
(SELECT Title FROM temp1 where [flag] = 'No')
delete from temp1 where [flag] = 'No'
是否可以使用单个查询。如果是的话,请让我知道或任何其他更好的方法..
答
delete from temp1
where
Title IN
(SELECT Title FROM temp1 where [flag] = 'No')
答
这应该工作:
delete from t1
from temp1 t1
inner join temp2 t2 on t1.Title = t2.Title
where t2.[flag] = 'No'
Thanku。查询很聪明。 – satya 2010-09-21 12:17:10