一、group_concat函数的功能

将group by产生的同一个分组中的值连接起来,返回一个字符串结果。

group_concat函数首先根据group by指定的列进行分组,将同一组的列显示出来,并且用分隔符分隔。由函数参数(字段名)决定要返回的列。例如:

create table emp(

emp_id int primary key auto_increment comment '编号',

emp_name char(20) not null default '' comment '姓名',

salary decimal(10,2) not null default 0 comment '工资',

department char(20) not null default '' comment '部门'

);

insert into emp(emp_name,salary,department)

values('张晶晶',5000,'财务部'),('王飞飞',5800,'财务部'),('赵刚',6200,'财务部'),('刘小贝',5700,'人事部'),

('王大鹏',6700,'人事部'),('张小斐',5200,'人事部'),('刘云云',7500,'销售部'),('刘云鹏',7200,'销售部'),

('刘云鹏',7800,'销售部');

执行如下查询及结果:

select group_concat(emp_name) from emp;

+----------------------------------------------------------------------------------------+

| group_concat(emp_name) |

+----------------------------------------------------------------------------------------+

| 张晶晶,王飞飞,赵刚,刘小贝,王大鹏,张小斐,刘云云,刘云鹏,刘云鹏 |

+----------------------------------------------------------------------------------------+

1 row in set (0.00 sec)

mysql> select department,group_concat(emp_name) from emp group by department;

+------------+-------------------------------+

| department | group_concat(emp_name) |

+------------+-------------------------------+

| 人事部 | 刘小贝,王大鹏,张小斐 |

| 财务部 | 张晶晶,王飞飞,赵刚 |

| 销售部 | 刘云云,刘云鹏,刘云鹏 |

+------------+-------------------------------+

3 rows in set (0.00 sec)

二、函数语法:

group_concat( [DISTINCT] 要连接的字段 [Order BY 排序字段 ASC/DESC] [Separator ‘分隔符’] )

group_concat([distinct] 字段名 [order by 排序字段 asc/desc] [separator '分隔符'])

说明:

(1)使用distinct可以排除重复值;

(2)如果需要对结果中的值进行排序,可以使用order by子句;

(3)separator是一个字符串值,默认为逗号。

下面举例说明:SELECT apply_id,cate_name from tb_manager_audit_cate;

以apply_id分组,把cate_name 字段的值在同一行打印出来,逗号分隔(默认):select apply_id, group_concat(cate_name) from tb_manager_audit_cate group by apply_id;

以apply_id分组,把cate_name 字段的值在一行打印出来,分号分隔:select apply_id,group_concat(cate_name separator ';') from tb_manager_audit_cate group by apply_id;

三、示例代码

SELECT

( SELECT GROUP_CONCAT( t2.cate_name ) FROM tb_manager_audit_cate t2

WHERE t2.apply_id = ut.apply_id ) AS cates ,CONCAT(mas.province ,mas.city ,mas.zone ) AS region

FROM tb_manager_audit_store mas

INNER JOIN tb_apply_user_template ut ON ut.apply_id = mas.apply_id

where mas.status=0 order by mas.store_id desc LIMIT 0,10

mysql group函数_mysql中group_concat函数的使用相关推荐

  1. mysql中group_concat函数_MySQL中group_concat函数

    为什么我要学习该函数,我在做控制页面的权限的时候,没有使用Shiro框架[强烈推荐使用], 为了降低学习成本,暂时给学生过渡的想法,我需要控制到按钮级别的权限,我的想法是通过Jquery对我的页面中的 ...

  2. mysql的concat函数_MySQL中concat函数(连接字符串)

    MySQL中concat函数 使用方法: CONCAT(str1,str2,-) 返回结果为连接参数产生的字符串.如有任何一个参数为NULL ,则返回值为 NULL. 注意: 如果所有参数均为非二进制 ...

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

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

  4. mysql中explain的使用,mysql使用方法_mysql中explain函数的使用方法

    摘要 腾兴网为您分享:mysql中explain函数的使用方法,英语字典,小熊到家,腾讯新闻,刷机大师等软件知识,以及adobeflashplayerformac,灯光工厂,全民小视频,网盘解析,37 ...

  5. mysql算法函数_mysql中的函数总结

    mysql中常用日期时间函数 MySQL服务器中的三种时区设置: ①系统时区---保存在系统变量system_time_zone ②服务器时区---保存在全局系统变量global.time_zone ...

  6. mysql中日期函数_mysql中日期函数ADDDATE()函数用法大全

    摘要: 下文讲述mysql数据库中日期函数ADDDATE方法简介说明,如下所示: ADDDATE函数简介说明 ADDDATE函数是DATE_ADD函数的同义词,具有同样的功能, 其作用为:为指定的日期 ...

  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. mysql sysdate用法_mysql中时间函数now()current_timestamp()和sysdate()比较

    转载请注明出处 https://www.cnblogs.com/majianming/p/9647786.html 在mysql中有三个时间函数用来获取当前的时间,分别是now().current_t ...

  9. mariadb mysql 语法_Mariadb MySQL、Mariadb中GROUP_CONCAT函数使用介绍

    MySQL.Mariadb中GROUP_CONCAT 函数使用介绍 By:授客 QQ:1033553122 语法: GROUP_CONCAT([DISTINCT] column_name [ORDER ...

最新文章

  1. linux filesystem_Linux 查看磁盘占比?
  2. 康宁玻璃ct值计算公式_CT原理(一)
  3. pyinstaller 打包selenium脚本 取消cmd
  4. Confluence 6 在升级之前
  5. 报名 | CCKS 2021评测任务:生活服务领域知识图谱问答
  6. web安全测试-AppScan使用分享
  7. java-redis字符类数据操作示例(一)
  8. Python 设计模式之建造者模式 Builder Pattern
  9. 在Carmaker中建立自己的交通环境
  10. AXURE母版事件(Raised-events)
  11. windows使用Apple的Trackpad
  12. 双 JK 触发器 74LS112 逻辑功能。真值表_【数电笔记】时序逻辑电路设计举例
  13. 计算机的硬盘和光驱的接口是什么类型的接口,连接硬盘和光驱是什么接口
  14. 【第1128期】从北京回来的年轻人,该告诉你点什么?
  15. (CCTV2视频)中国动画80年
  16. 您有新的订单提示音在线试听_告别千篇一律的微信提示音
  17. OpenGL with QtWidgets:练习之甜甜圈
  18. 【实战篇】40 # 如何实现3D地球可视化?
  19. JS输出26个英文大小写字母
  20. 注册电子邮箱帐号优点

热门文章

  1. DeepLab v3+为啥可以封神?(论文讲解含超详细注解+中英文对照+配图)
  2. YOLOV5 参数设定与模型训练的坑点一二三
  3. php查询星座属相,一个判断干支、属相和星座的php函数
  4. NNDL实验四 线性分类
  5. Tomcat 500错误 问题集锦
  6. protel99se导入封装库时报错File is not recognized
  7. 悬剑2.0 tools安装_APP自动化测试之环境搭建:2. Android SDK安装配置
  8. 前端面试题总结(Ajax部分)
  9. python:json转excel
  10. 魅蓝metal android7,魅族魅蓝metal的手机系统是什么?能升级安卓5.0吗?