看个实际例子:将表test中的userName重复的记录删掉:
上面的例子不太全面有bug,因为如果userName相同但是height不同的话会被误删。所以应该这样:
********************************************************************************************
mysql> select * from duplicate;
+----+-------+
| id | name |
+----+-------+
| 1 | wang |
| 2 | wang |
| 3 | wdang |
| 4 | wdang |
| 5 | wdand |
| 6 | wddda |
+----+-------+
6 rows in set (0.00 sec)
select * from duplicate where id in(select min(id) from duplicate group by name);
+----+-------+
| id | name |
+----+-------+
| 1 | wang |
| 3 | wdang |
| 5 | wdand |
| 6 | wddda |
+----+-------+
4 rows in set (0.01 sec)
+----+-------+
| id | name |
+----+-------+
| 1 | wang |
| 2 | wang |
| 3 | wdang |
| 4 | wdang |
| 5 | wdand |
| 6 | wddda |
+----+-------+
6 rows in set (0.00 sec)
select * from duplicate where id in(select min(id) from duplicate group by name);
+----+-------+
| id | name |
+----+-------+
| 1 | wang |
| 3 | wdang |
| 5 | wdand |
| 6 | wddda |
+----+-------+
4 rows in set (0.01 sec)
mysql> delete from duplicate where id not in(select min(id) from duplicate group by name);
ERROR 1093 (HY000): You can't specify target table 'duplicate' for update in FROM clause
ERROR 1093 (HY000): You can't specify target table 'duplicate' for update in FROM clause
错误原因:
mysql中不能这么用。 (等待mysql升级吧) 错误提示就是说,不能先select出同一表中的某些值,再update这个表(在同一语句中) 替换方案: create table tmp as select min(id) as col1 from blur_article group by title; delete from blur_article where id not in (select col1 from tmp);
相关推荐
ORACLE 删除重复数据 在 ORACLE 数据库中,删除重复数据是一项常见的操作。重复数据的存在可能会导致数据不一致、查询效率下降等问题。今天,我们将介绍三种删除重复数据的方法,并对每种方法的执行时间进行比较。 ...
该算法是基于重复数据的一个简单的算法,适合各种语言,比网上的其他的算法简洁,更容易理解,算法,适合各种编程语言,如,数组,集合
易语言学习进阶去除重复数据源码。@资源源码站。
oracle中如何删除重复数据,方便大家下载
OracleSQL实例-删除重复数据行留最新日期实例.pdf 学习资料 复习资料 教学资源
使用ORACLE去除重复数据,这在日常数据处理中非常有用。
Excel 2021 删除重复数据项 在 Excel 2021 中,删除重复数据项变得更加方便和快捷。下面是相关知识点的详细解释: 1. 删除重复数据项的重要性 在数据分析和处理过程中,删除重复数据项是一项非常重要的步骤。重复...
oracle数据库各种删除重复数据方法
SQL Server删除重复数据的几个方法SQL Server删除重复数据的几个方法
删除表中重复数据 删除表中重复数据 删除表中重复数据
Excel 2021 删除重复数据项方法 在 Excel 2021 中,删除重复数据项变得更加方便和快捷。Excel 2021 保留了"高级筛选"功能,并增加了一个"删除重复项"按钮,简化了删除重复记录的操作。 知识点一:删除重复数据项的...
1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断 2、删除表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断,只留有rowid最小的记录
plsql删除重复记录
易语言学习进阶去除重复数据源码,学习进阶去除重复数据
删除表中重复数据sql语句 绝对经典和详细 太好了
数据结构 合并链表 并去除重复数据. 将LLa,LLb链表合并后存入LLc升序,输出显示,最后再去除链表中重复数据去除重复数据
重复数据删除技术中的关键技术MD5算法及改进
ORACLE删除重复数据的一种高效的方法.
文章目录stata清洗数据——去除重复数据方法stata中的_N和_n(是去重操作的基础)去重操作对单一列:id对两列(及以上):date 和 证券代码 stata清洗数据——去除重复数据方法 stata中的_N和_n(是去重操作的基础)...
Excel 删除重复数据行的方法和技巧 Excel 作为一个功能强大的电子表格处理软件,经常需要处理大量的数据。在实际工作中,我们常常会遇到重复数据的問題,这些重复数据不仅占用空间还会影响数据的分析和处理效率。...