加入收藏 | 设为首页 | 会员中心 | 我要投稿 聊城站长网 (https://www.0635zz.com/)- 智能语音交互、行业智能、AI应用、云计算、5G!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

mysql的DISTINCT怎么应用

发布时间:2023-07-15 14:42:29 所属栏目:MySql教程 来源:
导读:本篇内容介绍了“mysql的DISTINCT怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
本篇内容介绍了“mysql的DISTINCT怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
 
mysql的DISTINCT的关键字有很多你想不到的用处
 
 1.在count 不重复的记录的时候能用到
 
 比如SELECT COUNT( DISTINCT id ) FROM tablename;
 
 就是计算talbebname表中id不同的记录有多少条2,在需要返回记录不同的id的具体值的时候可以用
 
 比如SELECT DISTINCT id FROM tablename;
 
 返回talbebname表中不同的id的具体的值3.上面的情况2对于需要返回mysql表中2列以上的结果时会有歧义
 
 比如SELECT DISTINCT id, type FROM tablename;
 
 实际上返回的是 id与type同时不相同的结果,也就是DISTINCT同时作用了两个字段,必须得id与tyoe都相同的才被排除了,与我们期望的结果不一样 // 但这里是我希望的4.这时候可以考虑使用group_concat函数来进行排除,不过这个mysql函数是在mysql4.1以上才支持的
 
5.其实还有另外一种解决方式,就是使用
 
 SELECT id, type, count(DISTINCT id) FROM tablename
 
 虽然这样的返回结果多了一列无用的count数据(或许你就需要这个我说的无用数据)
 
 返回的结果是 只有id不同的所有结果和上面的4类型可以互补使用,就是看你需要什么样的数据了id name
 
1 a
 
2 b
 
3 c
 
4 c
 
5 b
 
select *, count(distinct name) from table group by name
 
id name count(distinct name)
 
1 a 1
 
2 b 1
 
3 c 1
 
 

(编辑:聊城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章