时间:2025-01-23 15:01:26
导读:sql清除重复数据 在SQL中,可以使用以下几种方法来清除重复数据: 1. 使用group by语句:select count(*) as c, ID from table group by duplicate_col having......
sql清除重复数据
在SQL中,可以使用以下几种方法来清除重复数据:
1. 使用group by语句:select count(*) as c, ID from table group by duplicate_col having c > 1; 这样拿到的id都是duplicate的id,然后使用delete from table where ID in ();就可以删除重复的数据。
2. 使用临时表:首先用group by找出列属性不重复的数据,然后插入临时表,接着删除不在临时表中的原表记录。SQL语句类似于:delete from tableA where id not in (select id from tableA group by columnA, columnB)。
3. 使用row_number函数:用 rid=row_number()over(partition by 分组列 order by 排序列),然后删除rid>1的。
4. 使用distinct插入临时表:先使用distinct插入临时表,然后truncate掉原表数据,最后把临时表数据插入回来即可。
5. 使用delete from table_name WHERE column_name IN (SELECT column_name FROM table_name GROUP BY column_name HAVING COUNT(*) > 1)来删除重复数据。
新视点数码百科版权所有,广州云媒派信息技术有限公司 版权所有 粤ICP备2021127029号