Если у вас есть столбец, в котором указан порядок, вы можете использовать условное агрегирование:
select max(case when columnname = 'SupplierGSTin' then value end) as SupplierGSTin,
max(case when columnname = 'DocumentNumber' then value end) as DocumentNumber,
max(case when columnname = 'SupplyType' then value end) as SupplyType
from (select t.*,
row_number() over (partition by columnname order by ?) as seqnum
from t
) t
group by rownum;
?
- для столбца, в котором указан порядок.