zoukankan      html  css  js  c++  java
  • 教您如何使用MySQL group_concat函数

    MySQL group_concat函数是典型的字符串连接函数,下面就为您介绍MySQL group_concat的语法,希望对您学习MySQL group_concat函数有所帮助。

    MySQL group_concat函数
    完整的语法如下:
    group_concat([DISTINCT] 要连接的字段 [Order BY ASC/DESC 排序字段] [Separator '分隔符'])

    基本查询

    1. mysql> select * from aa;  
    2. +------+------+  
    3. | id| name |  
    4. +------+------+  
    5. |1 | 10|  
    6. |1 | 20|  
    7. |1 | 20|  
    8. |2 | 20|  
    9. |3 | 200   |  
    10. |3 | 500   |  
    11. +------+------+  
    12. 6 rows in set (0.00 sec) 

    以id分组,把name字段的值打印在一行,逗号分隔(默认)

    1. mysql> select id,group_concat(name) from aa group by id;  
    2. +------+--------------------+  
    3. | id| group_concat(name) |  
    4. +------+--------------------+  
    5. |1 | 10,20,20|  
    6. |2 | 20 |  
    7. |3 | 200,500|  
    8. +------+--------------------+  
    9. 3 rows in set (0.00 sec)  
    10.  

    以id分组,把name字段的值打印在一行,分号分隔

    1. mysql> select id,group_concat(name separator ';') from aa group by id;  
    2. +------+----------------------------------+  
    3. | id| group_concat(name separator ';') |  
    4. +------+----------------------------------+  
    5. |1 | 10;20;20 |  
    6. |2 | 20|  
    7. |3 | 200;500   |  
    8. +------+----------------------------------+  
    9. 3 rows in set (0.00 sec)  
    10.  

    以id分组,把去冗余的name字段的值打印在一行,

    逗号分隔

    1. mysql> select id,group_concat(distinct name) from aa group by id;  
    2. +------+-----------------------------+  
    3. | id| group_concat(distinct name) |  
    4. +------+-----------------------------+  
    5. |1 | 10,20|  
    6. |2 | 20   |  
    7. |3 | 200,500 |  
    8. +------+-----------------------------+  
    9. 3 rows in set (0.00 sec) 

    以id分组,把name字段的值打印在一行,逗号分隔,以name排倒序

      1. mysql> select id,group_concat(name order by name desc) from aa group by id;  
      2. +------+---------------------------------------+  
      3. | id| group_concat(name order by name desc) |  
      4. +------+---------------------------------------+  
      5. |1 | 20,20,10   |  
      6. |2 | 20|  
      7. |3 | 500,200|  
      8. +------+---------------------------------------+  
      9. 3 rows in set (0.00 sec)  
      10.  
  • 相关阅读:
    PHP
    优秀网址
    客户关系管理系统CRM
    面试题
    练习并熟练掌握交互式 SQL 语言
    嵌入式的SQL程序设计
    数据库总结
    JDBC
    玩转Android之Drawable的使用
    Android开发之Activity转场动画
  • 原文地址:https://www.cnblogs.com/longhao/p/3780171.html
Copyright © 2011-2022 走看看