Questions[SQL]:SQL删除重复记录

Q:删除某字段中的重复记录,Table1006表中有Id和Phone字段,Id为不重复的标字段,但是Phone含有重复字段,现在需要重复Phone记录行删除掉,只保留最新一条记录。

A:

    if OBJECT_ID('dbo.Table1006'is not null
        
drop table dbo.Table1006
    
create table dbo.Table1006
    (
        
[Id] int,
        
[Phone] varchar(10)
    )
    
insert into dbo.Table1006 values(1100)
    
insert into dbo.Table1006 values(2110)
    
insert into dbo.Table1006 values(3120)
    
insert into dbo.Table1006 values(4130)
    
insert into dbo.Table1006 values(5110)
    
insert into dbo.Table1006 values(6110);
    
insert into dbo.Table1006 values(7120);
    
    
delete from dbo.Table1006 
        
where [Id] not in ( select  max([Id]as [Id] 
            
from dbo.Table1006 
            
group by [Phone])
    
select * from dbo.Table1006

    
drop table dbo.Table1006


posted @ 2008-10-13 09:57  chenjunbiao  阅读(160)  评论(0编辑  收藏  举报