Я использую выражение Common Table Expression и функцию PIVOT, чтобы получить количество продуктов, проданных за последние 5 лет, но я получаю сообщение об ошибке. Почему я получаю ошибку ниже?Ошибка SQL Server Pivot и Count
USE ADVENTUREWOKS2012;
WITH SALESDATA AS
(
SELECT
Product.PRODUCTID,
Product.Name,
YEAR(OrderDate) AS [YEAR SOLD]
FROM Purchasing.PurchaseOrderDetail
JOIN Production.Product
ON Product.ProductID = PurchaseOrderDetail.ProductID
JOIN Purchasing.PurchaseOrderHeader
ON PurchaseOrderDetail.PurchaseOrderID = PurchaseOrderHeader.PurchaseOrderID
GROUP BY Product.PRODUCTID,Product.Name,YEAR(OrderDate)
)
SELECT Name,
[2005],
[2006],
[2007],
[2008],
[2009],
PRODUCTID
FROM SALESDATA
PIVOT (COUNT(PRODUCTID) FOR [YEAR SOLD] IN ([2005], [2006], [2007], [2008], [2009])) AS P;
Ошибка:
Msg 207, Level 16, State 1, Line 21 Invalid column name 'PRODUCTID'.