Oracle中對多行查詢結果進行拼接


to_char(wmsys.wm_concat(to_char( st.col_name))) as new_name

to_char: 將當前值轉換成字符串類型;
wmsys.wm_concat:拼接函數

舉個例子:

--這種情況一般是策應多對多關系的中間表
--比如:懲罰方式(警告,罰款,記過) 對應人
--某個表中記錄了  id ,user_name,user_id,mode_id,mode_name,現在要根據人去找方式,
select t.user_id,to_char(wmsys.wm_concat(to_char(t.mode_name))) as modoe_name where t.user_id='1' group by t.user_id;

--結果會是: 1   記過,罰款,警告  結果拼接默認用逗號
----需要注意的是后面的分組條件,這個條件必須是出了拼接列之外的所有結果
select t.user_id,t.user_name,to_char(wmsys.wm_concat(to_char(t.mode_name))) as modoe_name where t.user_id='1' group by t.user_id,t.user_name;

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM