Sql server 比较两年销售额的查询
我在SQL Server中有一个包含以下列的表: 年 月 产品 数量 例如:Sql server 比较两年销售额的查询,sql-server,tsql,Sql Server,Tsql,我在SQL Server中有一个包含以下列的表: 年 月 产品 数量 例如: Year Month Product Qty 2011 1 XYZQW 45 所以在这个表中存储了所有的产品销售 我需要生成一个查询,以比较一年和上一年,以生成此报告: Year GEN FEB MAR APR MAY GIU JUL AUG SEP OCT NOV DEC ------------------------------------------------------
Year Month Product Qty
2011 1 XYZQW 45
所以在这个表中存储了所有的产品销售
我需要生成一个查询,以比较一年和上一年,以生成此报告:
Year GEN FEB MAR APR MAY GIU JUL AUG SEP OCT NOV DEC
-------------------------------------------------------
2011 12 23 56 54 14 11 15 18 89 87 48 98
2012 19 21 55 50 24 10 19 17 88 81 45 90
有一种方法可以在不创建临时表的情况下执行此操作?这很简单,请尝试以下操作:
WITH DT(AMonth,AYear,AQty)
AS (SELECT Month, Year, Qty
FROM YourTable)
SELECT pvt.*
FROM DT cte
PIVOT
(SUM(AQty)
FOR AYear IN ( [2011],[2012],[2013],[2014] ) ) AS pvt
它被称为枢轴。在这里了解它。