17,377
社区成员
发帖
与我相关
我的任务
分享
[code=SQL]SQL> with b as (select 1 a1,'a' a2 from dual
2 union
3 select 1 a1,'b' a2 from dual
4 union
5 select 2 a1,'x' a2 from dual
6 union
7 select 2 a1,'y' a2 from dual
8 union
9 select 2 a1,'z' a2 from dual
10 )
11 select a1,max(sys_connect_by_path(a2,' ')) aa from
12 (select a1,a2,rownum rnum,row_number()over(partition by a1 order by a1,a2) rn from b)
13 start with rn=1
14 connect by rnum-1=prior rnum
15 group by a1
16 ;
A1 AA
---------- --------------------------------------------------------------------------------
1 a b
2 x y z
[/code]
select max(substr((sys_connect_by_path(a2,'')),2)) cola
from (
select a1,a2,
rownum rnum,
row_number() over(partition by a1 order by a1) rn1
from a
)
start with rn1=1
connect by rnum-1=prior rnum
group by a1