我正在SQL Server中使用PIVOT通过YEAR(QuotaDate)汇总SalesQuota。
我想知道为什么这个版本不起作用:
但是这个确实做到了
似乎不喜欢在PIVOT中使用YEAR()函数,因此我只是在PIVOT之前的FROM语句中进行了嵌套的SELECT。
有什么想法吗?
p.s。有人知道我如何从输出中去除括号吗?
我是SQL的新手,列名是数字,所以我在方括号中加上了括号,但是在最终输出中看起来很难看。
答案 0 :(得分:0)
我只是使用条件聚合来做到这一点。您可以尝试使用双引号:
select concat( . . . ) as salesperson,
sum(case when year(quotadata) = 2011 then salesquota end) as "2011",
sum(case when year(quotadata) = 2012 then salesquota end) as "2012",
sum(case when year(quotadata) = 2013 then salesquota end) as "2013",
sum(case when year(quotadata) = 2014 then salesquota end) as "2014"
from . . .
group by concat( . . . )