mysql删除重复数据
2013-08-19 23:01
239 查看
今天写了一个sql语句,功能是删除一个表中指定字段有重复的数据:
DELETE FROM test WHERE id IN (SELECT id FROM test GROUP BY id H***ING COUNT(id) > 1)
提示错误:
You can't specify target table 'test' for update in FROM clause
网上查了下原因:mysql中不能先select出同一表中的某些值,再update这个表(在同一语句中)
其实小小的修改一下就能实现这样的功能,修改后sql语句:
DELETE FROM test WHERE id IN (SELECT a.id FROM (SELECT id FROM test GROUP BY id H***ING COUNT(id) > 1) AS a)
DELETE FROM test WHERE id IN (SELECT id FROM test GROUP BY id H***ING COUNT(id) > 1)
提示错误:
You can't specify target table 'test' for update in FROM clause
网上查了下原因:mysql中不能先select出同一表中的某些值,再update这个表(在同一语句中)
其实小小的修改一下就能实现这样的功能,修改后sql语句:
DELETE FROM test WHERE id IN (SELECT a.id FROM (SELECT id FROM test GROUP BY id H***ING COUNT(id) > 1) AS a)
相关文章推荐
- SQL---mysql删除重复数据
- MySQL删除表中重复数据及主键重新排列
- mysql删除重复数据的sql
- mysql之删除重复数据
- Mysql 查询表中重复数据和删除表中重复的数据
- Mysql学习笔记——删除重复数据(除id不同)
- mysql删除重复数据
- mysql 删除重复数据
- MySQL 删除数据库中重复数据方法小结
- Mysql删除重复的数据 Mysql数据去重复
- mysql 删除重复数据(多个字段重复)
- mysql根据条件删除重复的数据保留一条
- mysql删除某个字段重复的数据
- mysql-删除重复数据
- mysql 删除表中重复数据留一条
- mysql 删除单表内多个字段重复的数据
- mysql 删除重复数据
- mysql 创建唯一索引前 删除重复数据只保留id最小一条。
- MySQL下面删除重复数据
- MySQL删除重复数据