1 /* 2 SELECT <非透视的列>, 3 4 [第一个透视的列] AS <列名称>, 5 6 [第二个透视的列] AS <列名称>, 7 8 ... 9 10 [最后一个透视的列] AS <列名称>, 11 12 FROM 13 14 (<生成数据的 SELECT 查询>) 15 16 AS <源查询的别名> 17 18 PIVOT 19 20 ( 21 22 <聚合函数>(<要聚合的列>) 23 24 FOR 25 26 [<包含要成为列标题的值的列>] 27 28 IN ( [第一个透视的列], [第二个透视的列], 29 30 ... [最后一个透视的列]) 31 32 ) AS <透视表的别名> 33 34 <可选的 ORDER BY 子句>; 35 36 37 */ 38 39 declare @tb table 40 ( 41 cid int 42 ,cname varchar(10) 43 ) 44 insert into @tb 45 select 1,'aa' 46 union all 47 select 2,'bb' 48 49 select * from @tb 50 51 declare @idaa int 52 ,@idbb int 53 54 select aa,bb 55 from( 56 select cid,cname from @tb 57 )as tt 58 pivot( 59 max(cid) for cname in([aa],bb) 60 )piv