MySQL中group_concat函数-和group by配合使用
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配合使用的更多相关文章
- MySQL中group_concat函数 --- 很有用的一个用来查询出所有group by 分组后所有 同组内的 内容
本文通过实例介绍了MySQL中的group_concat函数的使用方法,比如select group_concat(name) . MySQL中group_concat函数 完整的语法如下: grou ...
- MySQL中group_concat函数深入理解
本文通过实例介绍了MySQL中的group_concat函数的使用方法,比如select group_concat(name) . 一.MySQL中group_concat函数 完整的语法如下: gr ...
- MySQL中group_concat函数
本文通过实例介绍了MySQL中的group_concat函数的使用方法,比如select group_concat(name) .MySQL中group_concat函数完整的语法如下:group_c ...
- mysql中group_concat函数用法
该函数返回带有来自一个组的连接的非NULL值的字符串结果.该函数是一个增强的Sybase SQL Anywhere支持的基本LIST()函数. 语法结构: GROUP_CONCAT([DISTINCT ...
- 关于Mysql中GROUP_CONCAT函数返回值长度的坑
1.GROUP_CONCAT函数: 功能:将group by产生的同一个分组中的值连接起来,返回一个字符串结果. 语法:group_concat( [distinct] 要连接的字段 [order b ...
- MYSQL中group_concat( )函数中参数的排序方法
使用mysql中的group_concat( )函数连接指定字段时,可以先对该字段进行排序. PS:是因为二刷mysql的51道题的第12题遇到的:查询和" 01 "号同学学习的课 ...
- MySQL中group_concat()函数的排序方法
group_concat()函数的参数是可以直接使用order by排序的.666..下面通过例子来说明,首先看下面的t1表. 比如,我们要查看每个人的多个分数,将该人对应的多个分数显示在一起,分数要 ...
- 关于mysql中GROUP_CONCAT函数的使用
偶然看到公司存储过程中有个字符串拼接的函数,改bug过程中使用到了,还挺有用的,于是记录下来方便记忆,帮助有需要的人. 这是我需要整理的串,他是调用了一个存储过程,传入组织机构的id和迭代层数,返回来 ...
- MySQL中MAX函数与Group By一起使用的注意事项(转)
mysql> select * from test; +----+-------+------+-------+ | id | name | age | class | +----+------ ...
随机推荐
- 与我一起extjs5(04--MVVM简要说明财产)
与我一起extjs5(04--MVVM简要说明财产) 以下我们来看一下自己主动生成的代码中的MVVM架构的关系. Main是一个可视的控件,MainController是这个控件的控制 ...
- mfc配置GDI+有106个错误
mfc配置GDI+有106个错误,处理如下,参考http://bbs.csdn.net/topics/380054079 一开始#include...放在stdafx.h里有错误,后来上面修改好了,放 ...
- JQuery EasyUI学习框架
前言 前端技术,新项目的开发拟使用EasyUI框架(基于EasyUI丰富UI组件库),项目负责人的提示EasyUI分配给我这个任务.发展前,我需要这对于一个新手EasyUI框架学习一些基本的入门.记录 ...
- Atitit.web三编程模型 Web Page Web Forms 和 MVC
Atitit.web三编程模型 Web Page Web Forms 和 MVC 1. 编程模型是 Web Forms 和 MVC (Model, View, Controller). 2. W ...
- MKMapView移动事件地图
MKMapView移动事件地图 by 吴雪莹 -(void)mapView:(MKMapView *)mapView regionWillChangeAnimated:(BOOL)animated { ...
- 百度echarts扇形图每个区块增加点击事件
效果图:操作人员要求 :我想看这个扇形图对应的 页面信息,给我加个链接跳转:原先的chart.js发现没有api,后来改用百度的echart.js <!DOCTYPE html> < ...
- jvm在存储区域
当区域执行的数据 JVM存储器的管理分为几个时间之后的数据区的实施:程序计数器.JavaVM栈.本地方法栈.Java堆.方法区(包括常量池的实现). 程序计数器 较小的内存空间,能够看作是当前线 ...
- schema for clojure
Schema for Clojure Data Shape Declaration and Validation 1.何为schema schema是描写叙述数据形式的一种clojure数据结构,可用 ...
- hibernate Java 时间和日期类型 Hibernate 制图
基础知识: 于 Java 于, 型表示的时间和日期包含: java.util.Date 和 java.util.Calendar. 外, 在 JDBC API 中还提供了 3 个扩展了 java.ut ...
- Javascript设计模式与开发实践读书笔记(1-3章)
第一章 面向对象的Javascript 1.1 多态在面向对象设计中的应用 多态最根本好处在于,你不必询问对象“你是什么类型”而后根据得到的答案调用对象的某个行为--你只管调用行为就好,剩下的一切 ...