pic*_*ick 5 sql sql-server-2005
假设我有一个看起来像这样的表:
-------------------------------
id|column2|column3   |column4
-------------------------------
1  value1  somevalue  somevalue
2  value2  somevalue  somevalue
3  value2  somevalue  somevalue <----- I want this column deleted
4  value3  somevalue  somevalue
如您所见,我要删除column2中当前行和上一行具有相同值的行。
我会尝试像
DELETE FROM Table t1 
WHERE EXISTS (SELECT 1 from Table t2 
              WHERE t1.Column2 = t2.Column2 
              AND t2.Id + 1 = t1.Id) 
对于您的特定查询,我将使用t2.Id + 1 = t1.Id代替,t2.Id < t1.Id因为这会删除所有出现的事件,而不仅仅是连续输入。