Hvis du ved, at du har tre kolonner, skal du opregne dem og samle:
select max(case when seqnum = 1 then type end) as type1,
max(case when seqnum = 1 then date end) as date1,
max(case when seqnum = 1 then amount end) as amount1,
max(case when seqnum = 2 then type end) as type2,
max(case when seqnum = 2 then date end) as date2,
max(case when seqnum = 2 then amount end) as amount2,
max(case when seqnum = 3 then type end) as type3,
max(case when seqnum = 3 then date end) as date3,
max(case when seqnum = 3 then amount end) as amount3
from (select t.*, rownum as seqnum
from t
) t;
Hvis du ikke kender antallet af kolonner, der returneres, skal du bruge dynamisk SQL (execute immediate
).