亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

group_concat函數(shù)詳解

系統(tǒng) 2951 0

問了好多人,都不知道group_concat這個(gè)函數(shù)。

?

這個(gè)函數(shù)好啊,能將相同的行組合起來,省老事了。

?

MySQL中g(shù)roup_concat函數(shù)


完整的語法如下:


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

?

基本查詢

      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字段的值打印在一行,逗號(hào)分隔(默認(rèn))

      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字段的值打印在一行,分號(hào)分隔

      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字段的值打印在一行,


逗號(hào)分隔

      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字段的值打印在一行,逗號(hào)分隔,以name排倒序

      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)

?

測(cè)試sql,項(xiàng)目中用到的。

      
        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
      
    

?

group_concat函數(shù)詳解


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 4huh34四虎最新 | 亚洲成年人在线 | 成人看片免费无限观看视频 | 四虎国产精品永久地址99 | 亚洲乱码视频在线观看 | 国产亚洲日本人在线观看 | 在线免费小视频 | 久久综合婷婷 | 9久热这里只有精品视频在线观看 | 97午夜理伦片在线影院 | 在线视频这里只有精品 | 欧美日韩国产一区三区 | 波多野结衣高清在线播放 | 亚洲va精品中文字幕动漫 | 久草久草在线视频 | 日韩国产中文字幕 | 日本中文字幕一区二区有码在线 | 2019国产精品视频 | 亚洲合集综合久久性色 | 日批视频网址免费观看 | 日日舔 | 男女一级特黄a大片 | 综合久久精品 | 中文字幕久久久久久精 | 日韩欧美色视频在线观看 | 精品久久久久久久 | 日韩精品一区二区三区国语自制 | 高清在线一区二区三区亚洲综合 | 亚洲欧美日韩久久精品第一区 | 免费视频精品一区二区 | 一级寡妇乱色毛片全18 | 欧美中文字幕在线 | 一级毛片视频在线观看 | 99热首页 | 玖玖免费 | www久久精品 | 亚洲看片 | 这里只有精品视频在线 | 亚洲一区二区三区四区五区 | 国产野花视频天堂视频免费 | 九九精品久久久久久久久 |