ORACLE 一列的多行資料拼成字串

2022-06-05 03:33:09 字數 521 閱讀 5505

查詢表中的乙個字段,返回了多行,就把這麼多行的資料都拼成乙個字串。 

例:   id  name 

1   aa 

2   bb 

3   cc 

要的結果是"aa,bb,cc" 

以前有過這種需求,我用儲存過程拼接,或者在程式中取出資料拼接,就這樣暫時解決了。 

可是事後一直在想是不是可以直接查出來,這樣就簡單多了,oracle中應該有這樣的方法的,可是一直沒找到,呵呵,今天終於解決了。 

select wmsys.wm_concat(a.name) from user a 

這樣的話,查詢出的結果:"aa.bb.cc" 

解決是解決了,不過用中間用點間隔不太好,希望用逗分號 

改進一下: 

select replace(wmsys.wm_concat(a.name),',',';') from user a 

結果:"aa;bb;cc" 

終於,完美解決了一直困擾我的問題。。。挺簡單的乙個方法

** 

ORACLE一列的多行資料拼成字元

例 id name 1 aa 2 bb 3 cc 要的結果是 aa,bb,cc 以前有過這種需求,我用儲存過程拼接,或者在程式中取出資料拼接,就這樣暫時解決了。可是事後一直在想是不是可以直接查出來,這樣就簡單多了,oracle中應該有這樣的方法的,可是一直沒找到,呵呵,今天終於解決了。select ...

ORACLE 一列的多行資料拼成字串

上篇文章寫的是在ibatis中,需要返回乙個字串,卻返回了多行資料,結果出現了錯誤。其實,我想做的是 查詢表中的乙個字段,返回了多行,就把這麼多行的資料都拼成乙個字串。例 id name 1 aa 2 bb 3 cc 要的結果是 aa,bb,cc 以前有過這種需求,我用儲存過程拼接,或者在程式中取出...

oracle 多行轉一列

以前用過又忘了。今天做資料匯出用到,記下。oracle中的wmsys.wm concat主要實現行轉列功能 說白了就是將查詢的某一列值使用逗號進行隔開拼接,成為一條資料 select d.id,d.papid as 援助系統,i.papname,d.fid as 發貨單號,d.fwdate as 發...