删除数据库表中重复的记录
来源:互联网 发布:软件测试员待遇 编辑:程序博客网 时间:2024/06/02 21:00
有时候,我们会在平时的工作中碰到如下的问题:
在一个数据表开始的时候,由于考虑的不完全,可能主键配置没有做好,可能在表中出现如下的重复数据
+------+-------+------+
| id | name | age |
+------+-------+------+
| 1 | jason | 23 |
| 2 | jason | 23 |
| 3 | jason | 23 |
| 4 | alex | 24 |
| 5 | alex | 24 |
+------+-------+------+
现在当我们希望去掉重复的姓名数据得到如下的结果
+------+-------+------+
| id | name | age |
+------+-------+------+
| 3 | jason | 23 |
| 5 | alex | 24 |
+------+-------+------+
开始写出了如下的一句SQL DELETE FROM TB_NAME WHERE id NOT IN (SELECT MAX(id) FROM TB_NAME GROUP BY name);
但是执行之后我们会发现如下错误:ERROR 1093 (HY000): You can't specify target table 'demo1' for update in FROM clause
后来换了一种写法,可以解决这个问题
DELETE FROM TB_NAME WHERE id NOT IN (SELECT id FROM (SELECT MAX(id) AS ID FROM TB_NAME GROUP BY name) AS TMP);
- 删除数据库表中重复的记录
- 删除数据库表中重复的记录
- 删除数据库中重复的记录
- 如何删除数据库中重复的记录
- 如何删除数据库中重复的记录
- 如何删除数据库中重复的记录
- Oracle数据库删除表中重复记录的常见方法
- Oracle数据库删除表中重复记录的常见方法
- Oracle数据库删除表中重复记录的常见方法
- mysql 删除数据库表中重复记录
- 删除数据库中重复记录
- 删除数据库中重复记录
- 数据库中删除重复记录
- 查找、删除表中重复的记录
- 如何查找、删除表中重复的记录
- 如何删除表中重复的记录?
- 如何查找、删除表中重复的记录
- 删除表中重复的记录
- 2012C++程序设计实验报告【12.3】
- 关于性能测试中的并发
- Java文件读写操作大全
- PMD规则设置
- 一步步教你为网站开发Android客户端
- 删除数据库表中重复的记录
- java命令
- Android RoboGuice 使用指南(19):发送接收Events
- Android开发-Intent 和 Activity
- 10个非常有用的PHP函数
- 开发随笔-EntitySQL 学习
- LINUX 下安装网软件的方法wine
- 实际的带宽和资源量来反推制作工艺(竹庄 无边落木)
- apache + tomcat集群