常见问题解答--Sql删除重复数据
2010-06-22 09:50
387 查看
sql学习过程中,碰到了删除冗余数据的问题。经过搜索,查找,终于解决了此问题
第一种,数据全部重复,如下图:
需要得到以下的结果:
删除重复的记录(重复记录保留1条),可以按以下方法删除
seleet distinct * into #Tmp from TableName
drop table TableName
select * into TableName from #Tmp
drop table #Tmp
第二种,数据部分字段重复,ID不重复 ,如下图:
需要得到以下结果:
下面的语句可以达到要求:
delete 表 where id not in(
SELECT MAX(id) AS id FROM 表 GROUP BY rows) --- 删除重复行
select * from 表 where id in(
SELECT MAX(id) AS id FROM 表 GROUP BY rows) --重复行只查询一条
注:如有错误,多多指教!
第一种,数据全部重复,如下图:
需要得到以下的结果:
删除重复的记录(重复记录保留1条),可以按以下方法删除
seleet distinct * into #Tmp from TableName
drop table TableName
select * into TableName from #Tmp
drop table #Tmp
第二种,数据部分字段重复,ID不重复 ,如下图:
需要得到以下结果:
下面的语句可以达到要求:
delete 表 where id not in(
SELECT MAX(id) AS id FROM 表 GROUP BY rows) --- 删除重复行
select * from 表 where id in(
SELECT MAX(id) AS id FROM 表 GROUP BY rows) --重复行只查询一条
注:如有错误,多多指教!
相关文章推荐
- SQL 已更新或删除的行值要么不能使该行成为唯一行(sqlserver中有多行所有的列重复的数据,无法更新或删除问题)
- SQL面试常见问题:查询及删除重复记录的方法
- SQL 已更新或删除的行值要么不能使该行成为唯一行(sqlserver中有多行所有的列重复的数据,无法更新或删除问题)
- 存储分析:常见重复数据删除系统问题
- sqlserver中多行所有数据重复,无法更新或删除问题,通常是在没有主键的情况下的表
- SQL 已更新或删除的行值要么不能使该行成为唯一行(sqlserver中有多行所有的列重复的数据,无法更新或删除问题)
- SQL 已更新或删除的行值要么不能使该行成为唯一行(sqlserver中有多行所有的列重复的数据,无法更新或删除问题)
- SQL面试常见问题处理:查询和删除重复记录
- SQL 已更新或删除的行值要么不能使该行成为唯一行(sqlserver中有多行所有的列重复的数据,无法更新或删除问题)
- 查询和删除表中重复数据sql语句
- 删除重复数据 SQL
- SQL删除数据因外键关联导致花费时间太长----(外键列上增加索引解决此问题)
- WEBadi重复数据删除问题
- SQL去除重复删除重复数据(高效)
- SQL删除重复数据只保留一条
- 常用SQL语句实例大全(含过滤及删除重复数据、导入导出数据等)
- sql删除重复数据
- SQL:删除重复数据,只保留一条
- 【转】SQL删除重复数据方法,留着备用
- sql删除重复数据的详细方法