drop table #tmp --删除临时表
create table #tmp --创建临时表
(
number numeric(18, 0)
)
insert into #tmp
select number from cght group by number having count(*)>1 --将number 字段有重复记录的内容插入到临时表
select * from #tmp
declare @count int
declare @i int
declare @i1 int
select @i=count(*) from #tmp
set @i1=0
while @i1<@i
begin
select @count =count(*) from cght where number in(select top(1) number from #tmp order by number) --获得临时表中第一条记录在原表中有多少条重复记录
delete top(@count-1) from cght where number in(select top(1) number from #tmp order by number)--删除原表的重复记录,留一条
delete from #tmp where number in (select top(1) number from #tmp order by number) --删除临时表的第一条记录
set @i1=@i1+1
end