SQL 删除重复记录
2012-06-01 09:57
218 查看
例如:
id name value
1 a pp
2 a pp
3 b iii
4 b pp
5 b pp
6 c pp
7 c pp
8 c iii
id是主键
要求得到这样的结果
id name value
1 a pp
3 b iii
4 b pp
6 c pp
8 c iii
方法1
delete YourTable
where [id] not in (
select max([id]) from YourTable
group by (name + value))
方法2
delete a
from 表 a left join(
select (id) from 表 group by name,value
)b on a.id=b.id
where b.id is null
id name value
1 a pp
2 a pp
3 b iii
4 b pp
5 b pp
6 c pp
7 c pp
8 c iii
id是主键
要求得到这样的结果
id name value
1 a pp
3 b iii
4 b pp
6 c pp
8 c iii
方法1
delete YourTable
where [id] not in (
select max([id]) from YourTable
group by (name + value))
方法2
delete a
from 表 a left join(
select (id) from 表 group by name,value
)b on a.id=b.id
where b.id is null
相关文章推荐
- 用SQL删除重复记录的N种方法
- sql2005,删除某个字段重复的记录,随机留下一条记录
- SQL Server中快速删除重复记录(转东转西)
- sql删除重复记录
- 查询|删除同一表内一个或多个字段重复记录的SQL语句
- sql 删除表中多余的重复记录(多个字段),只保留一条记录
- SQL重复记录处理(查找,过滤,删除)
- sql查询重复记录、删除重复记录方法大全
- 从表中删除重复记录的sql
- sql 查询,删除重复的记录
- 在SQL中删除重复记录(多种方法)[转]
- sql查询重复记录、删除重复记录方法大全
- sql查询重复记录、删除重复记录方法大全
- SQL删除表中有重复的记录
- Sql 删除重复行记录
- Oracle 查询并删除重复记录的SQL语句
- Sql server 删除重复记录的SQL语句
- sql 删除表中多余的重复记录(多个字段),只保留一条记录
- 在SQL中删除重复记录(多种方法)(转)
- Oracle 查询并删除重复记录的SQL语句