概述
本教程操作环境:windows10系统、mysql8.0.22版本、Dell G3电脑。
mysql怎样查询重复字段
示例 accountinfo 表数据如下:
场景一 单个字段重复数据查找 & 去重
我们要把上面这个表中 单个字段 account字段相同的数据找出来。
思路 分三步 简述:
第一步
要找出重复数据,我们首先想到的就是,既然是重复,那么 数量就是大于 1 就算是重复。 那就是 count 函数 。
因为我们要排查的是 单个 字段account ,那么就是需要按照 account 字段 维度 去分组。 那就是 group by 函数。
那么我们第一步写出来的mysql 语句是:
SELECT account ,COUNT(account) as count FROM accountinfo GROUP BY account;
登录后复制
查询结果如下:
第二步
没错,如我们所想,count大于1的即是 account为 A 和 B 的数据。
那么我们稍作筛选,只把count大于1的数据的account 找出来。
第二步,利用having 拼接筛选条件,写出来的mysql 语句是:
SELECT account FROM accountinfo GROUP BY account HAVING COUNT(account) > 1;
登录后复制
查询结果如下:
第三步
重复的account数据 A B 都找出来了,接下来我们只需要把account为A 和 B 的其他数据都一起查询出来。
那就是利用第二步查出来的数据做为子查询条件,使用 IN 函数。
第三步写出来的mysql 语句是:
SELECT * FROM accountinfo WHERE account IN
(
SELECT account FROM accountinfo GROUP BY account HAVING COUNT(account) > 1
);
登录后复制
查询结果如下:
可以看到重复的数据都被我们筛选出来了。
推荐学习:mysql视频教程
以上就是mysql怎样查询重复字段的详细内容,更多请关注靠谱客其它相关文章!
最后
以上就是傲娇灰狼为你收集整理的mysql怎样查询重复字段的全部内容,希望文章能够帮你解决mysql怎样查询重复字段所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复