2015-08-18 5 views
1

Я уже некоторое время борюсь с этим запросом. Я получаю следующее сообщение об ошибке:SQL Server PIVOT-запрос

Error in WHERE clause near 'PIVOT' 
Unable to parse query text. 

Мой запрос в настоящее время выглядит следующим образом:

SELECT * 
FROM 
(
SELECT tblDatCash.colDate as dt , tblDatCash.colAccount as acc, 
     tblDatCash.colCash as cash 
FROM tblDatCash 
WHERE tblDatCash.colAccount = '5002680000CHF' or tblDatCash.colAccount ='5002680000EUR' 
) DataTable 
PIVOT 
(
sum([cash]) 
FOR [acc] IN ([5002680000CHF], [5002680000EUR]) 
) AS PIVOT 

Чтобы сделать вещи понятнее, вот отрывок из того, что в таблице tblDatCash:

colAccount    colCash  colDate 
02300000407319600000H 1512.83  2015-08-17 00:00:00.000 
02300000362949610000Y 16537855.97 2015-08-17 00:00:00.000 
5002680000CHF   3228530.89 2015-08-17 00:00:00.000 
5002680000EUR   133825.33 2015-08-17 00:00:00.000 
5002680000USD   694247.14 2015-08-17 00:00:00.000 

Может ли кто-нибудь помочь мне в этом?

ответ

1

Вы используете ключевое слово PIVOT как псевдоним таблицы в последней строке запроса, который вы не можете сделать. Измените его на:

) AS P 

или что-то еще, что не является ключевым словом.