<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    SQL關于分組合并字段解決方案

    之前遇到分組后合并某字段得問題,我都會自己去寫個函數去實現。直至今天我才知道,原來各個數據庫都提供了相關的函數,只是我不知道罷了。
    mysql提供的函數功能最為強大,oracle和postgresql提供的函數只能實現單個字段合并

    1.mysql:group_concat函數,demo如下:
    表數據:

    SQL:SELECT group_concat(name,',',remark order by id desc separator ';'FROM test group by age;
    運行結果:


    2.oracle:wmsys.wm_concat函數,功能比較簡單,只能實現單字段間的合并,demo如下:
    表數據:


    SQL:
    SELECT DISTINCT
        wmsys.wm_concat (NAME) OVER (
            PARTITION BY AGE
            ORDER BY
                (SELECT 1 FROM dual)
        )
    FROM
        (
            SELECT
                *
            FROM
                T_TEST
            ORDER BY
                ID DESC
        ) T
    結果:


    3.Postgresql:array_to_string以及string_agg兩個函數都能實現,推薦string_agg,demo如下:
    表數據:

    SQL:
         SELECT id,array_to_string(ARRAY(SELECT unnest(array_agg(name)) order by 1),';'FROM t_kenyon GROUP BY id ORDER BY id;

         SELECT id,string_agg(name,';'FROM t_kenyon GROUP BY id ORDER BY id;
    結果:

    posted on 2014-12-31 15:49 Mr.lu 閱讀(907) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    導航

    統計

    常用鏈接

    留言簿(2)

    隨筆檔案

    文章檔案

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲大尺度无码无码专线一区| 久久久久亚洲AV成人无码| 最新亚洲卡一卡二卡三新区 | 九九全国免费视频| 国产精品jizz在线观看免费| 亚洲jizzjizz少妇| 免费一级肉体全黄毛片| 免费精品视频在线| 国产精品亚洲A∨天堂不卡| 最新国产乱人伦偷精品免费网站 | 国产成人麻豆亚洲综合无码精品| 成人国产网站v片免费观看| 国产亚洲日韩在线三区| 在线看片免费人成视频久网下载 | 免费大片黄在线观看| 亚洲精品国自产拍在线观看| 中文字幕免费在线播放| 久久亚洲AV成人出白浆无码国产| 久久精品免费一区二区| 亚洲国产精品精华液| 亚洲午夜福利精品久久 | 久久免费线看线看| 亚洲天堂电影在线观看| 日本免费电影一区| 99热在线日韩精品免费| 亚洲视频精品在线观看| 成人五级毛片免费播放| 特级做a爰片毛片免费看| 亚洲一区二区三区日本久久九| 免费AA片少妇人AA片直播| 精品视频免费在线| 亚洲av无码精品网站| 蜜桃视频在线观看免费网址入口| 污网站在线免费观看| 亚洲A∨无码无在线观看| 成年性羞羞视频免费观看无限| 一个人看的www视频免费在线观看| 99ri精品国产亚洲| 一本久到久久亚洲综合| 97碰公开在线观看免费视频| 免费一区二区三区在线视频|