oracle10g以上版本提供行转列组合成字符串函数wmsys.wm_concat
例如有个users表如下:
id yhm xm
1 001 小唐
2 002 小李
3 003 小张
select wmsys.wm_concat(yhm) 用户名, wmsys.wm_concat(xm) 姓名 from users
执行结果为:
用户名 姓名
001,002,003 小唐,小李,小张
regexp_substr函数的使用
以下例子,是按逗号将一个字段的值拆分成多行
select regexp_substr('aaa,bbb,ccc,dddd,e,f', '[^,]+', 1, level) from dual
connect by level <= 5 ;