sql >> Databáze >  >> RDS >> Sqlserver

Transponujte řádky do sloupců na základě sloupce ID

můžete k tomu použít klauzuli pivot SQL Server:

select
    p.*
from Table1
pivot(
    max([Field Selection])
    for [Field Name] in ([Rating 1], [Rating 2], [Rating 3])
) as p

nebo se můžete otočit ručně:

select
    ID,
    max(case when [Field Name] = 'Rating 1' then [Field Selection] end) as [Rating 1], 
    max(case when [Field Name] = 'Rating 2' then [Field Selection] end) as [Rating 2],
    max(case when [Field Name] = 'Rating 3' then [Field Selection] end) as [Rating 3]
from Table1
group by ID

ukázka houslí sql




  1. Jak extrahovat nebo převádět časová data z řetězce v SQL Server

  2. Indexy SQL Server – vzestupné nebo sestupné, jaký je v tom rozdíl?

  3. Hodnota SQL předchozího (neznámého) data

  4. Název sloupce Dynamic SQL Server Pivot ( UNPIVOT ) na hodnotu řádku