2009-09-23 49 views
1

我希望能够旋转一个SQL查询的结果,以便代替在一系列行中返回的结果,结果作为单列返回多列。 以下表为例。如何在SQL Server 2005中旋转查询的结果?

Create Table TestData 
(
things varchar(25) 
) 

Insert into TestData values ('Thing1') 
Insert into TestData values ('Thing2') 
Insert into TestData values ('Thing3') 
Insert into TestData values ('Thing4') 

我想 '从TESTDATA选择的东西'

返回类似 Thing1 Thing2 Thing3 Thing4

而不是

  1. Thing1
  2. Thing2像select语句
  3. Thing3
  4. 东西4

在此先感谢您的帮助。

更新:

由Gratzy看到推荐使用透视我发现我可以通过添加标识列的表像这样得到期望的结果之后。

Create Table TestData 
(
id int identity, 
    things varchar(25) 
) 

然后运行以下内容。 SELECT * FROM TESTDATA PIVOT ( MAX(观光) FOR [ID] IN([1],[2],[3],[4]) ) AS结果

回答