www.7671.net > sql重复数据只保留一个

sql重复数据只保留一个

假设该表id作为pk,只保留一条shopname不重复数据 delete from shop where id not in(select min(id) from shop group by shopname) 效率不是很高,但是通用性比较强

有2个办法1.找出一份不重复的表,导入到临时表,把原先的表数据删除,在把临时表的数据导回去,这个适合没有ID字段的表,语句:找出唯一数据,把重复去掉并存入中转表:select distinct * into table(中转表名称) from tb(原表) 删除原

如果只是要查询不是重复的记录的话 select distinct * from 表 如果是将多余的重复记录删除 首先将不是重复的数据提取出来,保存到一个临时表中 select distinct * into #temp from 表 然后删除原来的表 delete from 表 最后往里面插入临时表的数据 insert into 表 select * from #temp

delete from t_prices_jg where fid not in (select min(fid) from t_prices_jg group by fitemcode,foper,fsb)这样就行了啊,备份一下表执行

这个简单,凡是重复的保留一个就可以了,是这个意思吧.那么就是 select min(id) from table group by title这样的就能查出来每个title的最小的id,就算有重复的,也能显示出来最小的id,如果没有重复,那么这条语句也会得到唯一的id然后where

用distinct去掉重复项你的意思是这样吗?select distinct 你要得到的字段名称 from 表

;with cte as (select *,row_number() over(partitioin by id_depot,id_product order by id_depot)rn from tb)delete cte where rn>1

select distinct VipNo,列 from 表 order by TremYmd DESC

delete from T where T.rowid!=(select max(rowid) from T t where student.A=t.A and student.B=t.B and student.C=t.C);

--一条SQL搞定delete from 表 where id not in (select id from 表 as 主表 where id in (select top 1 id from 表 where 身份证 = 主表.身份证))

友情链接:gsyw.net | dfkt.net | bfym.net | qwfc.net | 596dsw.cn | 网站地图

All rights reserved Powered by www.7671.net

copyright ©right 2010-2021。
www.7671.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com