把具有相同字段的纪录删除,只留下一条
来源:互联网 发布:全国二级c语言真题 编辑:程序博客网 时间:2024/05/07 07:07
一,多步骤实现
select [标志字段id],count(*) into temp1 from [表名]
group by [标志字段id]
having count(*)>1
2、将不重复的记录记入temp1表:
insert temp1
select [标志字段id],count(*) from [表名]
group by [标志字段id]
having count(*)=1
3、作一个包含所有不重复记录的表:
select * into temp2 from [表名]
where 标志字段id in(select 标志字段id from temp1)
4、删除重复表:
delete [表名]
5、恢复表:
insert [表名]
select * from temp2
6、删除临时表:
drop table temp1
drop table temp2
二,单步骤实现
DELETEFROM temp t1
WHERE EXISTS(
SELECT t2.主键
FROM temp t2
WHERE t2.主键 = t1.主键
GROUP BY t2.主键
HAVING COUNT(*) > 1 )
AND ROWID NOT IN(
SELECT MIN(ROWID)
FROM temp t3
WHERE t3.主键 = t1.主键 );
三,另一个方法
delete from test a
where rowid>(select min(rowid) from test b where a.name=b.name);
0 0
- 把具有相同字段的纪录删除,只留下一条
- 使用游标的方式删除表中相同的记录,并只留下其中一条
- 删除有两个字段相同的多条重复记录,只保存一条
- 删除有两个字段相同的多条重复记录,只保存一条
- 删除重复记录只留下一条
- 2个字段有相同的项,只选择一条
- scala合并文件,删除具有相同字段的记录
- oracle 相同数据删除(只留一条)
- mysql,oracle里删除重复记录,只保留一条(除了自增长字段,其他的字段完全相同为相同记录)
- SqlServer-删除某一个字段重复的记录,只保留一条
- 删除表中某字段重复的记录(只保留一条)
- mysql 删除字段内的重复内容只保留一条
- sql server 删除某个字段重复的记录并留下一条记录
- sql2005,删除某个字段重复的记录,随机留下一条记录
- sql案例:删除多条内容相同的数据,只保留一条
- sql取记录时有几个字段相同其他字段不同,但只取一条记录的写法
- 删除数据库表中某一字段相同的数据,并保留最新一条---Mysql
- 如何查询某一字段中相同值的纪录?
- php 通过代码定时执行功能
- [leetcode]Sudoku Solver
- android SDK无法更新下载
- java个人学习笔记02(注释+数据类型+算术逻辑运算)
- FFMPEG解码多线程
- 把具有相同字段的纪录删除,只留下一条
- vs2008中,静态库调用时报错:“无法解析的外部符号 _,该符号在函数 _wmain 中被引用”的解决方法
- 比特币是一场狂热的传销游戏
- error C2065: “CString”: 未声明的标识符
- jQuery Mobile 表单-滑块
- 如何取得GridView被隐藏列的值
- ANT标签详解
- lib和dll
- WebService下实现大数据量的传输