MySQL中group_concat函数

完整的语法如下:

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

基本查询

Sql代码  收藏代码
select * from aa; +------+------+
| id| name |
+------+------+
|1 | 10|
|1 | 20|
|1 | 20|
|2 | 20|
|3 | 200 |
|3 | 500 |
+------+------+
6 rows in set (0.00 sec) 以id分组,把name字段的值打印在一行,逗号分隔(默认) Sql代码 收藏代码
select id,group_concat(name) from aa group by id; +------+--------------------+
| id| group_concat(name) |
+------+--------------------+
|1 | 10,20,20|
|2 | 20 |
|3 | 200,500|
+------+--------------------+
3 rows in set (0.00 sec) 以id分组,把name字段的值打印在一行,分号分隔 Java代码 收藏代码
select id,group_concat(name separator ';') from aa group by id; +------+----------------------------------+
| id| group_concat(name separator ';') |
+------+----------------------------------+
|1 | 10;20;20 |
|2 | 20|
|3 | 200;500 |
+------+----------------------------------+
3 rows in set (0.00 sec) 以id分组,把去冗余的name字段的值打印在一行, 逗号分隔 Sql代码 收藏代码
select id,group_concat(distinct name) from aa group by id; +------+-----------------------------+
| id| group_concat(distinct name) |
+------+-----------------------------+
|1 | 10,20|
|2 | 20 |
|3 | 200,500 |
+------+-----------------------------+
3 rows in set (0.00 sec) 以id分组,把name字段的值打印在一行,逗号分隔,以name排倒序 Sql代码 收藏代码
select id,group_concat(name order by name desc) from aa group by id; +------+---------------------------------------+
| id| group_concat(name order by name desc) |
+------+---------------------------------------+
|1 | 20,20,10 |
|2 | 20|
|3 | 500,200|
+------+---------------------------------------+
3 rows in set (0.00 sec) 测试sql,项目中用到的。
Sql代码 收藏代码
SELECT
EMPLOYEES.EMPID
,EMPLOYEES.EMPNAME
,DEPARTMENTS.DEPARTMENTNAME
,EMPLOYEES.DEPTID
,EMPLOYEES.EMPPWD
,EMPLOYEES.INSIDEEMAIL
,EMPLOYEES.OUTSIDEEMAIL
,EMPLOYEES.DELEFLAG
,EMPLOYEES.EMPCLASS
,(CONCAT('[', <span style="color: #ff0000;">GROUP_CONCAT</span>
(ROLE.Role_Name SEPARATOR '],['), ']')) AS ROLENAME
,(concat( '[', (
SELECT
<span style="color: #ff0000;">GROUP_CONCAT</span>
(DEPARTMENTS.DEPARTMENTNAME separator '],[')
FROM
EMP_ROLE_DEPT
LEFT JOIN DEPARTMENTS
ON (
DEPARTMENTS.DEPARTMENTID = EMP_ROLE_DEPT.DEPTID
AND DEPARTMENTS.DELEFLAG = 0
)
GROUP BY
EMP_ROLE_DEPT.EMPID
HAVING
EMP_ROLE_DEPT.EMPID = EMPLOYEES.EMPID
),']')) AS DEPARTMENTRIGHT
FROM
EMPLOYEES
LEFT JOIN DEPARTMENTS
ON (
DEPARTMENTS.DEPARTMENTID = EMPLOYEES.DEPTID
AND DEPARTMENTS.DELEFLAG = 0
)
LEFT JOIN ROLE_EMP
ON (ROLE_EMP.EMP_ID = EMPLOYEES.EMPID)
LEFT JOIN ROLE
ON (ROLE_EMP.ROLE_ID = ROLE.ROLE_ID)
<span style="color: #ff0000;"> GROUP BY
EMPLOYEES.EMPID</span> HAVING
EMPLOYEES.EMPID LIKE '%%'
AND EMPLOYEES.EMPNAME LIKE '%%'
AND EMPLOYEES.DELEFLAG = 0
AND (
EMPLOYEES.EMPCLASS = '1'
OR EMPLOYEES.EMPCLASS = '2'
)
AND EMPLOYEES.DEPTID = '001' LIMIT 0
,16

MySQL中group_concat函数-和group by配合使用的更多相关文章

  1. MySQL中group_concat函数 --- 很有用的一个用来查询出所有group by 分组后所有 同组内的 内容

    本文通过实例介绍了MySQL中的group_concat函数的使用方法,比如select group_concat(name) . MySQL中group_concat函数 完整的语法如下: grou ...

  2. MySQL中group_concat函数深入理解

    本文通过实例介绍了MySQL中的group_concat函数的使用方法,比如select group_concat(name) . 一.MySQL中group_concat函数 完整的语法如下: gr ...

  3. MySQL中group_concat函数

    本文通过实例介绍了MySQL中的group_concat函数的使用方法,比如select group_concat(name) .MySQL中group_concat函数完整的语法如下:group_c ...

  4. mysql中group_concat函数用法

    该函数返回带有来自一个组的连接的非NULL值的字符串结果.该函数是一个增强的Sybase SQL Anywhere支持的基本LIST()函数. 语法结构: GROUP_CONCAT([DISTINCT ...

  5. 关于Mysql中GROUP_CONCAT函数返回值长度的坑

    1.GROUP_CONCAT函数: 功能:将group by产生的同一个分组中的值连接起来,返回一个字符串结果. 语法:group_concat( [distinct] 要连接的字段 [order b ...

  6. MYSQL中group_concat( )函数中参数的排序方法

    使用mysql中的group_concat( )函数连接指定字段时,可以先对该字段进行排序. PS:是因为二刷mysql的51道题的第12题遇到的:查询和" 01 "号同学学习的课 ...

  7. MySQL中group_concat()函数的排序方法

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

  8. 关于mysql中GROUP_CONCAT函数的使用

    偶然看到公司存储过程中有个字符串拼接的函数,改bug过程中使用到了,还挺有用的,于是记录下来方便记忆,帮助有需要的人. 这是我需要整理的串,他是调用了一个存储过程,传入组织机构的id和迭代层数,返回来 ...

  9. MySQL中MAX函数与Group By一起使用的注意事项(转)

    mysql> select * from test; +----+-------+------+-------+ | id | name | age | class | +----+------ ...

随机推荐

  1. 【iOS】Swift扩展extension和协议protocol

    加上几个关节前Playground摘要码进入github在,凝视写了非常多,主要是为了方便自己的未来可以Fanfankan. Swift语法的主要部分几乎相同的. 当然也有通用的.运算符重载.ARC. ...

  2. 8.19! 今天我有18生日,点击阅读或顶部 尾随幸运的一天!生日知识!↓——【Badboy】

    话说得生疼.我已经想到了17那年,那是一年的时间!我在这里7.24我认为这是我的生日 结果到处宣传 ,首页疑问发现自己是错的生日 按照农历计勒把我羞辱. 不依照原农历7.24的  今天的国家今天的日历 ...

  3. mac已安装xctool而简单的执行xctool打包

    先安装brew,brew是一个包管理工具,有了它我们就能够非常方便的安装xctool了,brew安装命令例如以下: curl -LsSf http://github.com/mxcl/homebrew ...

  4. The C5 Generic Collection Library for C# and CLI

    The C5 Generic Collection Library for C# and CLI https://github.com/sestoft/C5/ The C5 Generic Colle ...

  5. Class撑起了OOP世界的天。Class类是OO的基本单元,OO的世界都是通过一个一个的类协作完成的,提高软件的重用性、灵活性和扩展性(转)

    引言 在OO的工作中,我们一定会涉及到类,抽象类和接口.那么类和抽象类以及接口到底扮演的什么角色? 本文主要是从人类社会的角度阐述类与抽象类以及接口的“社会”关系,从而让我们抛弃书上的那些死记硬背的概 ...

  6. Android系统关机或几种方式重启

    ---------------------------------------------------------------------------------------------------- ...

  7. Nginx模块开发入门(转)

    前言 Nginx是当前最流行的HTTP Server之一,根据W3Techs的统计,目前世界排名(根据Alexa)前100万的网站中,Nginx的占有率为6.8%.与Apache相比,Nginx在高并 ...

  8. Catalan数总结

    财产: 前20条目:1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862, 16796, 58786, 208012, 742900, 2674440, 9694845, ...

  9. 从涂鸦到发布——理解API的设计过程(转)

    英文原文:From Doodles to Delivery: An API Design Process 要想设计出可以正常运行的Web API,对基于web的应用的基本理解是一个良好的基础.但如果你 ...

  10. 查询(Query)和标识(Identify)

    查询(Query)和标识(Identify) 相关文章:RESTful API URI 设计的一些总结. 问题场景:删除一个资源(Resources),URI 该如何设计? 应用示例:删除名称为 iP ...