sql >> Databasteknik >  >> RDS >> Sqlserver

SQL-fråga; horisontellt till vertikalt

Du kan använda en UNION ALL :

select No, 'Flag_1' as FlagName, Flag_1 as Flag_Value
from yourtable
union all
select No, 'Flag_2' as FlagName, Flag_2 as Flag_Value
from yourtable
union all
select No, 'Flag_3' as FlagName, Flag_3 as Flag_Value
from yourtable

Eller en UNPIVOT :

select no, FlagsName, flag_value
from yourtable
unpivot
(
    flag_value
    for FlagsName in (Flag_1, Flag_2, Flag_3)
) u

Se SQL Fippla med Demo




  1. excel till oracle db med VS 2005 C#

  2. Ändra språket för den aktuella sessionen i SQL Server

  3. Skapa förfrågan för att få antalet ej slutförda samtal

  4. Begränsande returnerad post från SQL-fråga i Oracle