mysql去出重复的数据
来源:互联网 发布:成都php 编辑:程序博客网 时间:2024/05/16 05:13
<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);"><span style="font-size:18px;">有时候数据库会不可避免的导入重复的数据,我们就需要根据某些条件去确定哪些是重复的数据,然后把它删除。</span></span>
创建如下表
<span style="font-size:18px;">CREATE TABLE `first_table` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(50) DEFAULT NULL, `user_no` varchar(50) DEFAULT NULL, `address` varchar(50) DEFAULT NULL, `telphone` varchar(50) DEFAULT NULL, PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8;</span>在这里面,名字,电话,地址一样的数据很多条,假设,我们想删除,名字和地址一样的员工
第一步:查找名字和地址一样的数据
select * from first_table group by username,address
第二步:把他们的id当作使用标记
select min(id) from first_table GROUP BY username,address;
第三步:删除id不在查询范围的。
delete from first_table where id not in (select min(id) from first_table GROUP BY username,address);
下面的句子看着很正确,但是运行的时候会报下面的错
[Err] 1093 - You can't specify target table 'first_table' for update in FROM clause;
大意就是,你不能一边查询,一边又删除,系统不支持你这么做,
这时候我们只需要一个小小的修改,给我们查询的数据起个别名
delete from first_table
where id not in (select * from (
select min(id) from first_table GROUP BY username,address
) as p
);
在查询表中数据
0 0
- mysql去出重复的数据
- sql去出重复数据
- EXCEL 一组数据筛选出重复的数据/去重
- mysql的去重复处理
- Oracle 去重复的数据
- Oracle 去重复的数据
- mySQL大量数据中去重复查询
- mysql去重复数据一点总结
- mysql的distinct用法-mysql中如何筛选出非重复的数据
- mysql的distinct用法-mysql中如何筛选出非重复的数据
- mysql的distinct用法-mysql中如何筛选出非重复的数据
- mysql的distinct用法-mysql中如何筛选出非重复的数据
- mysql的distinct用法-mysql中如何筛选出非重复的数据
- mysql的distinct用法-mysql中如何筛选出非重复的数据
- mysql查询出所有重复的记录
- 查寻出不重复的数据
- oracle去重复数据的处理方法
- list中去重复数据的
- 面试的心情
- Android Studio 安装
- Android 已经提供DisplayMetircs 类可以很方便的获取分辨率
- Jquery之Ajax(页面后台间数据交互)
- java的动态代理机制详解
- mysql去出重复的数据
- UITabBarController作为根视图控制器的时候出现的问题,popToRootViewController的时候出现两个TabBar
- 【前端】js小技巧(持续更新)
- RMI、RPC和JMS的比较
- AppCan移动技术全景图:创新、协作、支撑
- ruby使用format(或者%)格式化字符串String
- Android WebView JavaScript交互
- 安卓 数据库操作详解
- CentOS6.6安装ShadowSocks服务端