次の表がありますmy_tabe
:
M01 | 1
M01 | 2
M02 | 1
以下を取得するためにクエリを実行したい:
M01 | 1,2
M02 | 1
私は次のクエリを使用してなんとか近づくことができました:
with my_tabe as
(
select 'M01' as scycle, '1' as sdate from dual union
select 'M01' as scycle, '2' as sdate from dual union
select 'M02' as scycle, '1' as sdate from dual
)
SELECT scycle, ltrim(sys_connect_by_path(sdate, ','), ',')
FROM
(
select scycle, sdate, rownum rn
from my_tabe
order by 1 desc
)
START WITH rn = 1
CONNECT BY PRIOR rn = rn - 1
降伏:
SCYCLE | RES
M02 | 1,2,1
M01 | 1,2
どちらが間違っています。私は近くにいるようですが、次のステップは何なのかわからないのではないかと思います...
任意のヒント?