應用場景:在資料進行分組時,需要將字串型別的字段進行聚合。如需將資料更改為:
company
dept
pcode
公司1部門1
100254
公司1部門2
100245
company
dept
公司1部門1,部門2
(1)oracle中使用wm_concat()或listagg()函式,注意最好要加上to_char()避免亂碼問題,例:
/*方法一*/
select company,wm_concat(to_char(dept)) dept from super_test group by company
/*方法二:推薦此方法*/
select company,listagg(to_char(dept),'-') within group (order by dept) dept from super_test group by company
(2)hana中使用string_agg()函式,注意在order by和分割符號之間不要加逗號,例:
select company,string_agg(dept,','order by dept) from super_test group by company
oracle中多行聚合成字串
create table t row str id int,col varchar2 10 insert into t row str values 1,a insert into t row str values 1,b insert into t row str values 1,c inser...
SQL字串的分組聚合 ZT
本文 於t sql 字串分組聚合,也許你還有更簡單的辦法?今天在看訂閱的rss的時候,看到這麼乙個問題 t sql中如何對分組的資訊進行聚合,並以逗號連線字元 也就是對乙個表中的某個字段進行分組,然後對另乙個字段聚合,如果表達得不太清楚,請看下面的表。原表 parent child charles ...
SQL Server字串聚合拼接辦法
網上搜了一圈還是有不錯的方法的,比如stuff函式,我們可以這麼寫得到上面的結果 select type stuff select name fromtest b where b.type a.type for xml path 1 1,names fromtest a group by type ...