2015-04-16 7 views
2

Я получаю ошибку «неправильный синтаксис около" Basic», когда я пытаюсь выполнить следующий запрос:Pivot запрос вызывает ошибку «неправильный синтаксис» в предложении PIVOT

WITH BaseQuery AS (

SELECT Region,Essbase_Channel,Product,COUNT(New_reconnects) 
FROM NDW.dbo.SOS_Detail SOS 
WHERE SOS.EntityID IN ('000310','000700','000815','000854') 
    AND Division ='NORTHEAST DIVISION' AND Month_Name ='MAR' 
GROUP BY Month_Name,Product,Region,Essbase_Channel,EntityID,Division 

) 
SELECT * FROM BaseQuery 

PIVOT (COUNT(New_reconnects) FOR Product IN ('BASIC','HSI','CDV','H1','X1')) AS PVT 
ORDER BY Product,Region,Essbase_Channel 

Моя цель будет имеют первую колонку на основе Essbase_Channel, столбцы поворота - Product значения: BASIC, HSI, CDV, H1, а значения в стержне должны быть COUNT(New_reconnects).

Как изменить синтаксис запроса во избежание этой ошибки?

ответ

1

Изменить на:

FOR Product IN ([BASIC],[HSI],[CDV],[H1],[X1]) 
+0

Спасибо, что работали великолепно. – user2576682