我们通过 10g 所提供的 WMSYS.WM_CONCAT 函数即可以完成 行转列的效果
SQL> select * from idtable; ID NAME ---------- ------------------------------ 10 ab 10 bc 10 cd 20 hi 20 ij 20 mn
SQL> select id,wmsys.wm_concat(name) name from idtable
2 group by id; ID NAME ---------- -------------------------------------------------------------------------------- 10 ab,bc,cd 20 hi,ij,mn
===================
select t1.people, (select to_char(wmsys.wm_concat(real_name)) from user lu where instr(','||replace(t1.people,' ','')||',', ','||lu.uuid||',')>0 ) inside_people_name from t1
1 10168, 10085 a,b
2 10085, 10222, 10034 c,d,e
3 20330, 9999, 10004 f,g,h
4 10103 i