测试环境准备:

mysql> create table test01(name varchar(20),address varchar(20));
Query OK, 0 rows affected (0.28 sec)
mysql> insert into test01 values('huzj','hunan');
Query OK, 1 row affected (0.06 sec)
mysql> insert into test01 values('huzj','hubei');
Query OK, 1 row affected (0.00 sec)
mysql> insert into test01 values('huzj','jianxi');
Query OK, 1 row affected (0.01 sec)
mysql> insert into test01 values('huzj','sichuan');
Query OK, 1 row affected (0.01 sec)
mysql> insert into test01 values('huzy','sichuan');
Query OK, 1 row affected (0.00 sec)
mysql> insert into test01 values('huzy','nibo');
Query OK, 1 row affected (0.01 sec)
mysql> insert into test01 values('huzy','shanghai');
Query OK, 1 row affected (0.00 sec)
mysql> insert into test01 values('huzy','beijing');
Query OK, 1 row affected (0.01 sec)

测试:

mysql> select name,group_concat(address) from test01 group by name;
+------+-------------------------------+
| name | group_concat(address) |
+------+-------------------------------+
| huzj | hunan,hubei,jianxi,sichuan |
| huzy | sichuan,nibo,shanghai,beijing |
+------+-------------------------------+
2 rows in set (0.00 sec)

结论:group_concat()函数可以很好的建属于同一分组的多个行转化为一个列

行转列group_concat()函数妙用的更多相关文章

  1. Oracle行转列的函数

    --行转列的函数-- CREATE OR REPLACE FUNCTION Calvin( col IN VARCHAR2,dw IN VARCHAR2) RETURN VARCHAR2 IS ret ...

  2. 基于OpenCV的循环行、列移动函数circShift()

    ///*12 在Matlab中有个circShift()函数,可以实现行.列的循环移动 /// 在返卷积运算中,会用到这个函数.所以,在Opencv中我也定义同样 /// 功能的函数 /// 该函数有 ...

  3. mysql行转列,函数GROUP_CONCAT(expr)

    demo: 语句: SELECT '行' id, '' product_nameUNIONSELECT id, product_name FROM `product` WHERE id < 5 ...

  4. Oracle行转列LISTAGG函数

    工作过程中需要将查询的数据分组并显示在一行.以往的工作经验,在sql server中可以用for xml path来实现. 现提供Oracle数据库的行转列方式 oracle11g官方文档简介如下: ...

  5. MySQL -- 行转列 -- GROUP_CONCAT -- MAX(CASE WHEN THEN)

    列转行:利用max(case when then) SELECT `name`, MAX( CASE WHEN course='语文' THEN score END ) AS 语文, MAX( CAS ...

  6. SqlServer PIVOT函数快速实现行转列,UNPIVOT实现列转行

    我们在写Sql语句的时候没经常会遇到将查询结果行转列,列转行的需求,拼接sql字符串,然后使用sp_executesql执行sql字符串是比较常规的一种做法.但是这样做实现起来非常复杂,而在SqlSe ...

  7. SqlServer PIVOT函数快速实现行转列,UNPIVOT实现列转行(转)

    我们在写Sql语句的时候没经常会遇到将查询结果行转列,列转行的需求,拼接sql字符串,然后使用sp_executesql执行sql字符串是比较常规的一种做法.但是这样做实现起来非常复杂,而在SqlSe ...

  8. Oracle自定义行转列函数

    --行转列自定义函数,只针对TABLE1表 --paramType是参数类型,用于判断,param1和param2是条件参数 create or replace function My_concat( ...

  9. Mysql 列转行group_concat函数,与行转列

    1.正常情况. SELECT JoinEventIds from nt_mainnum 2.使用group_concat函数 select group_concat(JoinEventIds) fro ...

随机推荐

  1. pycharm 配置支持vue

    http://www.cnblogs.com/c-x-m/p/9229199.html

  2. python multiprocessing 和tcp

    #用类方法 服务端 from socket import *from multiprocessing import Processimport os class Myprocess(Process): ...

  3. python 3.6.5 map() max() lambda匿名函数

    python 3.6.5 sample: map() 会根据提供的函数对指定序列做映射. 第一个参数 function 以参数序列中的每一个元素调用 function 函数,返回包含每次 functi ...

  4. dev accordionControl panelcontorl 使用

    对于dev的窗体布局我想更系统的专业的学学,不是评自己以往 的经验去做, 所以我看了dev的demo 里边的例子,封装的很严实,还有他们自己重新做的控件,无法直接使用, 关键的控件也上了锁,可能也是保 ...

  5. Activity(活动)

  6. 安装composer,以及通过composer安装laravel

    1安装composer http://docs.phpcomposer.com/00-intro.html#Installation-Windows中选择windows安装 下载并且运行 Compos ...

  7. 2018 How to register and install LAUNCH ICARSCAN software ?

    2018 New Version ICARSCAN is available now! Here’s the instruction on how to install ICARSCAN softwa ...

  8. Python的程序入口 __name__属性

    python中每个模块都有一个 '__name__' 属性,当其值为 '__main__' 时,表名该模块自身在运行,否则是被引入的. 当一个模块被当做一个整体调用的时候,模块名.__name__ 的 ...

  9. JSONObject 的使用学习

    http://www.cnblogs.com/hitwtx/articles/2468633.html put与accumulate,element方法的区别什么? http://blog.csdn. ...

  10. asio的网络通讯代码练手

    asio的网络基本模板(单例模式 消息队列 ) // MyAsio.cpp: 定义控制台应用程序的入口点. // #include "stdafx.h" #include < ...