mysql中group concat_mysql中group_concat()函数的使用方法总结
本文实例讲述了mysql group_concat()函数用法。分享给大家供大家参考,具体如下:
group_concat(),手册上说明:该函数返回带有来自一个组的连接的非NULL值的字符串结果。比较抽象,难以理解。
通俗点理解,其实是这样的:group_concat()会计算哪些行属于同一组,将属于同一组的列显示出来。要返回哪些列,由函数参数(就是字段名)决定。分组必须有个标准,就是根据group by指定的列进行分组。
group_concat函数应该是在内部执行了group by语句,这是我的猜测。
1.测试语句:
SELECT group_concat(town) FROM `players` group by town
结果去查找town中去查找哪些值是一样的,如果相等,就全部列出来,以逗号分割进行列出,如下:
group_concat(town)
北京,北京
长沙
2.测试:SELECT group_concat( town )
FROM players
结果:
group_concat(town)
长沙,北京,北京,
上面是否可以证明,group_concat只有与group by语句同时使用才能产生效果? 下面进行了实际测验
3.测试常量对group_concat()的配置影响:SET @@GROUP_CONCAT_MAX_LEN=4
手册中提到设置的语法是这样的:SET [SESSION | GLOBAL] group_concat_max_len = val;
两种有什么区别?SET @@global.GROUP_CONCAT_MAX_LEN=4;
global可以省略,那么就变成了:SET @@GROUP_CONCAT_MAX_LEN=4;
4.使用语句SELECT group_concat(town) FROM `players`
结果得到:
group_concat(town)
长沙,北京,长沙,北京
结论:group_concat()函数需要与group by语句在一起使用,才能得到需要的效果。
原因可以这样理解:group_concat()得到是属于x组的所有成员(函数里面列参数指定需要显示哪些字段)。x组从哪里来?如果没有group by进行指定,那么根本不知道group_concat()根据哪个分组进行显示出成员。 所以,像上面没有group by子句的时候,就显示了长沙和北京。
实际中什么时候需要用到这个函数?
假如需要查询的结果是这样:左边显示组名,右边想显示该组别下的所有成员信息。用这个函数,就可以省去很多事情了。
另外,假如我这样使用:SELECT group_concat( name, sex ) FROM `players` town。意义不大。group_concat()指定一个列是最好的情况。如果指定了多个列。那么显示结果类似这样:group_concat(name,sex)
王滔,王小明男,刘惠女,舒明女
mysql中group concat_mysql中group_concat()函数的使用方法总结相关推荐
- mysql group concat_MySQL 的 GROUP_CONCAT 函数详解
GROUP_CONCAT(expr) 函数会从 expr 中连接所有非 NULL 的字符串.如果没有非 NULL 的字符串,那么它就会返回 NULL.语法如下: GROUP_CONCAT 语法规则 它 ...
- mysql group语句可以排序_MySQL中group_concat()函数的排序方法
示例一 group_concat()函数的参数是可以直接使用order by排序,下面通过例子来说明,首先看下面的t1表. 比如,我们要查看每个人的多个分数,将该人对应的多个分数显示在一起,分数要从高 ...
- MySQL GROUP_CONCAT()函数的排序方法
1. 用法 GROUP_CONCAT() 函数的参数是可以直接使用 ORDER BY 排序的. 2. 例子 1. 表中数据如下: id username score 1 张三 ...
- JavaScript中绑定事件监听函数的通用方法[ addEvent() ]
上篇文章讲到了事件绑定的3中常用方法:传统绑定.W3C绑定方法.IE绑定方法.但是,在实际开发中对于我们来讲重要的是需要一个通用的.跨浏览器的绑定方法.如果我们在互联网上搜索一下会发现许多方法,一下是 ...
- 计算机应用函数count,计算机二级office考试中excel考点:countif函数的使用方法
2019年9月份计算机等级考试还剩不到50天的时间了,参加二级office考试的同学应该都清楚题型的结构组成:选择题(20分).操作题(80分),其中大致可以分为word.excel.PPT三部分内容 ...
- Mysql学习-group by with rollup 函数 和order by field()自定义排序函数
今天看到同事的代码,学习到了 group by with rollup 函数 和order by field()自定义排序函数 group by with rollup 函数 文章地址 https:/ ...
- mysql concat换行_Mysql 的 GROUP_CONCAT() 函数拼接串
SELECT GROUP_CONCAT( ut.id_card ORDER BY ut.id_card DESC SEPARATOR ',' ) FROM `edu_user_train` ut ...
- asp.net中前台javascript与c#函数相互调方法
C#代码与javaScript函数的相互调用 问题: 1.如何在JavaScript访问C#函数? 2.如何在JavaScript访问C#变量? 3.如何在C#中访问JavaScript的已有变量? ...
- matlab中绘制三维散点图scatter3函数的使用方法(附matlab代码)
一.语法 1.scatter3(X,Y,Z) 在向量 X.Y 和 Z 指定的位置显示圆圈. 2.scatter3(X,Y,Z,S) 使用 S 指定的大小绘制每个圆圈.要绘制大小相等的圆圈,请将 S 指 ...
最新文章
- C#调用C++的DLL函数另一则(delegate) z
- 计算机维护方面的知识和技巧,电脑硬件维护常识和方法【图文详解】
- jQuery 轮播图
- SDN协议与SD-WAN中使用的协议相比有何差别?
- 【激活函数】Mish激活函数详解
- FFmpeg总结(十四)FFmpeg如何解析直播点播m3u8
- 搭建一个tomcat的JSP服务器环境
- 如何删除远程桌面计算机ip,远程桌面连接IP地址清除方法
- 算法分析之渐近分析(Asymptotic Analysis)
- win7 IIS安装与配置
- 短信验证码接口开发代码
- 切换IE浏览器的版本
- 深度学习如何参加阿里的天池比赛和进入天池实验室
- 计算机口令管理工具,PC免费密码管理器软件推荐
- 这就是iPhone 6的屏幕?
- 弧形背景html,弧形背景墙—弧形背景墙相关知识介绍
- Graphics的平移与旋转
- 新手如何做游戏代理赚钱?
- ACL / RBAC/ABAC
- JavaScript实现调查问卷