您的位置:首页 > 数据库

删除数据库表中重复的记录

2014-03-02 10:11 183 查看

删除数据库表中重复的记录

在处理数据的过程中,经常会遇到一个表中需要删除一些重复的记录。比如



在上表中,timeofday和cb_key_db_person两个字段,圈起来的记录是重复的,如果需要删除,即可用以下sql语句将要删除的记录查询出来:
SELECT * FROM lem

WHERE (timeofday,cb_key_db_person) IN (SELECT timeofday,cb_key_db_person FROM lem

GROUP BY timeofday,cb_key_db_person

HAVING COUNT(timeofday)>1

);
发现查询的结果是:



正是我们想要删除的记录,所以,就可以将上面的sql语句中的SELECT改为DELETE即可。
这里之所以先用SELECT查询,是因为如果直接用DELETE语句,一旦删除就是不可逆转的,万一删除了就通常都找不回来了,所以保险的做法是,先用SELECT将要删除的记录查询出来,如果确实是自己想要的结果,再用DELETE删除!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: