我有一个包含3列数据的表。该数据在过去两年中有一个季度的“季度数”列。因此,该数据每季度不断变化。由于值每季度都在变化,因此我无需对轴参数进行硬编码就可以旋转该表。
我尝试使用标准数据透视表和现有列进行数据透视,但是会引发错误。
Msg 8114, Level 16, State 1, Line 5
Error converting data type nvarchar to int.
Msg 473, Level 16, State 1, Line 5
The incorrect value "DATE_NBR" is supplied in the PIVOT operator.
select
*
FROM (Select METRIC, DATE_NBR as DN, COUNT from
QC_CM_DATA) p
pivot
(avg(COUNT) for DN IN (DATE_NBR)) as pivota
在我的SQL Server中,存在下表-QC_CM_DATA
METRIC-- COUNT-- DATE_NBR
A -- 1 -- 2017Q1
A -- 2 -- 2017Q2
A -- 3 -- 2017Q3
A -- 4 -- 2017Q4
B -- 1 -- 2017Q1
B -- 2 -- 2017Q2
B -- 3 -- 2017Q3
B -- 4 -- 2017Q4
C -- 1 -- 2017Q1
C -- 2 -- 2017Q2
C -- 3 -- 2017Q3
C -- 4 -- 2017Q4
我正尝试将其转为以下方式:
METRIC 2017Q1 2017Q2 2017Q3 2017Q4
A -- 1 -- 2 -- 3 -- 4
B -- 1 -- 2 -- 3 -- 4
C -- 1 -- 2 -- 3 -- 4
您能帮我解决上述问题吗?是否可以在不进行硬编码的情况下透视表?预先感谢!