with t1 as (
select 1 as id,400 as sr from dual
union
select 2 as id ,300 as sr from dual
union
select 3 ,300 from dual
union
select 4,200 from dual)
select * from t1 pivot (listagg(id,',') within group (order by sr) for sr in(200,300,400));
200 300 400
-------------------- -------------------- --------------------
4 2,3 1
这个结果吗?