sql怎么删除一模一样的2行数据。
select *from 表 where id=1600 得出了两行数据。但是怎么删除其中一条啊,这两行数据一模一样。
问题补充:是别人设计的表,竟然没有设置唯一的KEY,所以怎么删啊这么麻烦啊?我本来想在SQLSERVER2005中直接开表删,好像也删不了的提示框,咋办.
select *from 表 where id=1600 得出了两行数据。但是怎么删除其中一条啊,这两行数据一模一样。
问题补充:是别人设计的表,竟然没有设置唯一的KEY,所以怎么删啊这么麻烦啊?我本来想在SQLSERVER2005中直接开表删,好像也删不了的提示框,咋办.
select row_number() over(order by id) rn,* from 表 where id=1600 )
delete from a where rn=1
select row_number() over(order by id) rn,* from 表 where id=1600 )
delete from a where rn>1
这样好一点
delete from 表 where id=1600
select * into # from 表 where id=1600
delete from 表 where id=1600
insert into 表 select distinct * from #