T-SQL - 如何交换行和列

T-SQL - 如何交换行和列

问题描述:

我有一个这样的结果集结构

I have a resultset structure like this

ID       Value      Name
1       Oranges     Reponse
1       42      Count
2       Apples      Reponse
2       65      Count
3       Figs        Reponse
3       74      Count

我想了解这个:

ID     Response       Count
1       Oranges     42
2       Apples      65
3       Figs        74 

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

using SQL. Is there a way to do this? thanks!

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'