简体   繁体   English

如何将列名称分配给数据透视表

[英]How to assign column names to a pivot table

Heres my statement 这是我的声明

SELECT *
FROM(
SELECT CAST([School ID] as varchar(10)) AS 'School ID', Year, Value as [Total]
FROM [sandbox].[dbo].[SchoolInformation]
WHERE Attribute = 'Total' AND Year IN ('2010','2011','2012','2013','2014')

)cte
PIVOT (SUM([Total]) FOR YEAR IN([2010],[2011],[2012],[2013],[2014]))pvt

My question is, is there a way to change the column names to show (year1,year2,year3,year4,year5) instead of (2010,2011,2012,2013,2014)? 我的问题是,有没有办法更改列名称以显示(year1,year2,year3,year4,year5)而不是(2010,2011,2012,2013,2014)?

Thanks :) 谢谢 :)

You can alias your columns, like this. 您可以像这样对列进行别名。

SELECT
    [2010] AS 'year1',
    [2011] AS 'year2',
    ....
FROM (
    SELECT ...
) ...

Another way I can think of involves writing dynamic SQL. 我可以想到的另一种方法是编写动态SQL。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM