clwn.net
当前位置:首页 >> orAClE wm ConCAt去重 >>

orAClE wm ConCAt去重

wm_concat 的求和中对数据项的排序方式比较复杂,取数据是楼主你这种方式,其实只差最后一步了。 select max(a.var) var from (select wm_concat(t.id) over(order by to_number(t.id)) var from student t) a

SELECT RTRIM(XMLAGG(XMLPARSE(CONTENT 字段a || ',' WELLFORMED)) .GETCLOBVAL(), ',')FROM 表;

delete from 表名 where rowid not in( select min(rowid) from 表名 group by listagge)

insert into test values('aaa','1');insert into test values('bbb','2');insert into test values('ccc','5');insert into test values('ddd','3');select wm_concat(a),wm_concat(b) from test; WM_CONCAT(A) WM_CONCAT(B)1 aaa,bbb,ccc,ddd ...

一般是自己写函数重载这个方法,百度方法很有多 create or replace TYPE zh_concat_im AUTHID CURRENT_USER AS OBJECT( CURR_STR clob, STATIC FUNCTION ODCIAGGREGATEINITIALIZE(SCTX IN OUT zh_concat_im) RETURN NUMBER, MEMBER FUNCTION ODC...

方法一,使用connect by +sys_connect_by_path : --测试数据 create table test(col varchar2(10)); insert into test values('a'); insert into test values('b'); insert into test values('c'); --SQL语句: select ltrim(sys_connect_by_path(...

sys.wm_concat是oracle10g才有的函数,之前就没有。 而且这个一直是用逗号做分隔符的, 你说的情况,可能是: 用wm_concat后再用replace进行替换了,将 逗号 替换成 冒号了, 这也是一般的方法。 自己改写了wm_concat的函数,网上有这个函数的原...

with temp as( select 'China' nation ,'Guangzhou' city from dual union all select 'China' nation ,'Shanghai' city from dual union all select 'China' nation ,'Beijing' city from dual union all select 'USA' nation ,'New York' city...

select wm_concat(a.NAME) from( select a.id as aid,a.NAME from A a,B b start with a.ID=b.ID connect by prior a.PID=a.ID order by a.id asc ) a 试试这个。

wm_concat(s.columncode) 是把s.columncode这一列合并到一行,默认以 ' , ' 隔开。 replace(wm_concat(s.columncode),',','+') 则是在合并的同时,用 ' + ' 取代原来默认的' , '

网站首页 | 网站地图
All rights reserved Powered by www.clwn.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com