日期:2014-05-16  浏览次数:20444 次

oracle wm_concat函数,用于列转行,逗号分隔

?

wm_concat函数

?

首先让我们来看看这个神奇的函数wm_concat(列名),该函数可以把列值以","号分隔起来,并显示成一行,接下来上例子,看看这个神奇的函数如何应用

准备测试数据

?

SQL> create?table?test(id number,name varchar2(20));

SQL> insert into test values(1,'a');

SQL> insert into test values(1,'b');

SQL> insert into test values(1,'c');

SQL> insert into test values(2,'d');

SQL> insert into test values(2,'e');

?

SQL> commit;

?

效果1 : 行转列

?

SQL> select wm_concat(name) from test;

WM_CONCAT(NAME)

-------------------------------------

a,b,c,d,e

?

效果2: 把结果里的逗号替换成"|"