T-SQL - 如何交换行和列

Ash*_*ine 8 t-sql

我有这样的结果集结构

ID       Value      Name
1       Oranges     Reponse
1       42      Count
2       Apples      Reponse
2       65      Count
3       Figs        Reponse
3       74      Count
Run Code Online (Sandbox Code Playgroud)

我想谈谈这个:

ID     Response       Count
1       Oranges     42
2       Apples      65
3       Figs        74 
Run Code Online (Sandbox Code Playgroud)

使用SQL.有没有办法做到这一点?谢谢!

Luk*_*keH 13

SELECT a.ID, a.Value AS [Response], b.Value AS [Count]
FROM your_table AS a
    INNER JOIN your_table AS b
        ON a.ID = b.ID
WHERE a.Name = 'Response'
    AND b.Name = 'Count'
Run Code Online (Sandbox Code Playgroud)


Al *_*l W 6

这总是这样一个家务杂事pre sql server 2005.

现在我使用PIVOT/UNPIVOT