select
case when FTag = 1 then FValue else null end FValue1,
case when FTag = 2 then FValue else null end FValue2,
case when FTag = 3 then FValue else null end FValue3,
...
Field1, Field2...
from
(
select 1 FTag, FValue, Field1, Field2... from A
union all
select 2 FTag, FValue, Field1, Field2... from B
union all
select 3 FTag, FValue, Field1, Field2... from C
union all
...
) as inner_tab
case when FTag = 1 then FValue else null end FValue1,
case when FTag = 2 then FValue else null end FValue2,
case when FTag = 3 then FValue else null end FValue3,
...
Field1, Field2...
from
(
select 1 FTag, FValue, Field1, Field2... from A
union all
select 2 FTag, FValue, Field1, Field2... from B
union all
select 3 FTag, FValue, Field1, Field2... from C
union all
...
) as inner_tab