--删除题库(TABLE_Q )中,标题(TITLE )和类型(TYPE )都相同的数据,仅保留ID最小的一条 DELETE TABLE_Q FROM TABLE_Q, ( SELECT MIN( ID ) ID, TITLE, TYPE FROM TABLE_Q GROUP BY TITLE, TYPE HAVING COUNT( * ) > 1 ) T2 WHERE TABLE_Q.TITLE = T2.TITLE AND OTC_QUESTION_BANK.TYPE = T2.TYPE AND OTC_QUESTION_BANK.QUEST_NO > T2.QUEST_NO;
备注:
在Mysql中是不能删除查询出来的记录的,所以Oracle的写法在MySQL里执行会报错!
参考博客:
1,一条sql语句完成MySQL去重留一_Mysql_脚本之家
https://m.jb51.net/article/129656.htm
2,从mysql数据库删除重复记录只保留其中一条 - JDbeyond - 博客园
https://www.cnblogs.com/jdbeyond/p/8157224.html
本文介绍了一种在MySQL数据库中删除重复记录的方法,仅保留ID最小的一条数据,适用于标题和类型完全相同的记录去重场景。通过使用子查询和自连接的方式,实现了高效的数据清理。注意,该方法在MySQL中实现,不同于Oracle的直接删除重复记录的语法。
1627

被折叠的 条评论
为什么被折叠?



