using PIVOT for a table in ORACLE 12C
-- sample data
with data as
(
  select 34 as id, 1 as an_id, 'FIRST NAME' as title, 
    'ANDY' as full_title from dual union all
  select 34 as id, 1 as an_id, 'LAST NAME' as title, 
    'COOL' as full_title from dual union all
  select 34 as id, 1 as an_id, 'FIRST &amp; LAST' as title, 
    'ANDY COOL' as full_title from dual union all
  select 34 as id, 2 as an_id, 'FIRST NAME' as title, 
    'SCHUMACK' as full_title from dual union all
  select 34 as id, 2 as an_id, 'LAST NAME' as title, 
    'LAST' as full_title from dual union all
  select 34 as id, 2 as an_id, 'FIRST &amp; LAST' as title, 
    'SCHUMACK LAST' as full_title from dual union all
  select 32 as id, 1 as an_id, 'FIRST NAME' as title, 
    'MARIO' as full_title from dual union all
  select 32 as id, 1 as an_id, 'LAST NAME' as title, 
    'SANTI' as full_title from dual union all
  select 32 as id, 1 as an_id, 'FIRST &amp; LAST' as title, 
    'MARIO SANTI' as full_title from dual
)
-- query
select * from data
pivot (min(full_title) for title in ('FIRST NAME', 'LAST NAME', 'FIRST &amp; LAST'))
order by id desc, an_id
;


        ID      AN_ID 'FIRST NAME'  'LAST NAME'   'FIRST &amp; LAST
---------- ---------- ------------- ------------- -------------
        34          1 ANDY          COOL          ANDY COOL    
        34          2 SCHUMACK      LAST          SCHUMACK LAST
        32          1 MARIO         SANTI         MARIO SANTI  


Note that PIVOT requires an aggregate function, I could have used for example MAX as well.