本文实例讲述了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()函数的使用方法总结相关推荐

  1. mysql group concat_MySQL 的 GROUP_CONCAT 函数详解

    GROUP_CONCAT(expr) 函数会从 expr 中连接所有非 NULL 的字符串.如果没有非 NULL 的字符串,那么它就会返回 NULL.语法如下: GROUP_CONCAT 语法规则 它 ...

  2. mysql group语句可以排序_MySQL中group_concat()函数的排序方法

    示例一 group_concat()函数的参数是可以直接使用order by排序,下面通过例子来说明,首先看下面的t1表. 比如,我们要查看每个人的多个分数,将该人对应的多个分数显示在一起,分数要从高 ...

  3. MySQL GROUP_CONCAT()函数的排序方法

    1. 用法 GROUP_CONCAT() 函数的参数是可以直接使用 ORDER BY 排序的. 2. 例子 1.  表中数据如下: id  username  score 1    张三        ...

  4. JavaScript中绑定事件监听函数的通用方法[ addEvent() ]

    上篇文章讲到了事件绑定的3中常用方法:传统绑定.W3C绑定方法.IE绑定方法.但是,在实际开发中对于我们来讲重要的是需要一个通用的.跨浏览器的绑定方法.如果我们在互联网上搜索一下会发现许多方法,一下是 ...

  5. 计算机应用函数count,计算机二级office考试中excel考点:countif函数的使用方法

    2019年9月份计算机等级考试还剩不到50天的时间了,参加二级office考试的同学应该都清楚题型的结构组成:选择题(20分).操作题(80分),其中大致可以分为word.excel.PPT三部分内容 ...

  6. Mysql学习-group by with rollup 函数 和order by field()自定义排序函数

    今天看到同事的代码,学习到了 group by with rollup 函数 和order by field()自定义排序函数 group by with rollup 函数 文章地址 https:/ ...

  7. mysql concat换行_Mysql 的 GROUP_CONCAT() 函数拼接串

    SELECT GROUP_CONCAT( ut.id_card ORDER BY ut.id_card DESC SEPARATOR ',' )   FROM `edu_user_train` ut  ...

  8. asp.net中前台javascript与c#函数相互调方法

    C#代码与javaScript函数的相互调用 问题: 1.如何在JavaScript访问C#函数? 2.如何在JavaScript访问C#变量? 3.如何在C#中访问JavaScript的已有变量? ...

  9. matlab中绘制三维散点图scatter3函数的使用方法(附matlab代码)

    一.语法 1.scatter3(X,Y,Z) 在向量 X.Y 和 Z 指定的位置显示圆圈. 2.scatter3(X,Y,Z,S) 使用 S 指定的大小绘制每个圆圈.要绘制大小相等的圆圈,请将 S 指 ...

最新文章

  1. C#调用C++的DLL函数另一则(delegate) z
  2. 计算机维护方面的知识和技巧,电脑硬件维护常识和方法【图文详解】
  3. jQuery 轮播图
  4. SDN协议与SD-WAN中使用的协议相比有何差别?
  5. 【激活函数】Mish激活函数详解
  6. FFmpeg总结(十四)FFmpeg如何解析直播点播m3u8
  7. 搭建一个tomcat的JSP服务器环境
  8. 如何删除远程桌面计算机ip,远程桌面连接IP地址清除方法
  9. 算法分析之渐近分析(Asymptotic Analysis)
  10. win7 IIS安装与配置
  11. 短信验证码接口开发代码
  12. 切换IE浏览器的版本
  13. 深度学习如何参加阿里的天池比赛和进入天池实验室
  14. 计算机口令管理工具,PC免费密码管理器软件推荐
  15. 这就是iPhone 6的屏幕?
  16. 弧形背景html,弧形背景墙—弧形背景墙相关知识介绍
  17. Graphics的平移与旋转
  18. 新手如何做游戏代理赚钱?
  19. ACL / RBAC/ABAC
  20. JavaScript实现调查问卷

热门文章

  1. Android--百度地图密钥申请+环境配置(一)
  2. 对textfield的键盘改造成滚动选择器而不是输入键盘
  3. MongoDB命令及SQL语法对比
  4. 基于JavaWeb实现ATM机系统
  5. 使用Scala-IDE构建Maven项目
  6. Windbg调试中遇到的问题
  7. kettle安装部署及远程执行
  8. DB2命令行查看执行计划
  9. MVC 多级目录菜单
  10. nginx主配置文件 在那找怎么打开