SQL code
CREATE OR REPLACE VIEW V_TEST AS
select col1,col2,replace(replace(wm_concat(col3 || '|' || col4),',',';'),'|',',')
from tb
group by col1,col2
[/Quote]
WITH t1 AS
(SELECT 1 id1,2 id2,'x' f3,'y' f4 FROM dual UNION
SELECT 1 id1,2 id2,'x1' f3,'y1' f4 FROM dual UNION
SELECT 1 id1,2 id2,'x2' f3,'y2' f4 FROM dual UNION
SELECT 1 id1,3 id2,'x4' f3,'y4' f4 FROM dual)
SELECT id1,id2,wm_concat(f3||','||f4) FROM t1
GROUP BY id1,id2;