ORACLE GOURP BY 一个字段后,另一个字段值以逗号分割合并
参考:http://www.jb51.net/article/20948.htm
?
?
?
/*** 功能: ORACLE GOURP BY 一个字段后,另一个字段值以逗号分割合并* key_name : group by 字段名* coname : 需要用逗号分割的字段名* tname : 表名* 示例:* select str_list('DEPT_ID', dr.dept_id, 'ROLE_ID','qx.LEAP_DEPT_ROLE') from qx.LEAP_DEPT_ROLE dr group by dr.dept_id*/create or replace function str_list(key_name in varchar2, key in varchar2, coname in varchar2, tname in varchar2) return varchar2 as type rc is ref cursor; str varchar2(4000); sep varchar2(2); val varchar2(4000); cur rc;begin open cur for 'select ' || coname || ' from ' || tname || ' where ' || key_name || ' = :x ' using key; loop fetch cur into val; exit when cur%notfound; str := str || sep || val; sep := ', '; end loop; close cur; return str;end;? 1 楼 ppyymm000 2012-11-25 莫非你不知道有个叫wm_concat的函数?