Zliczanie wg warunku w SQL

0

Chcę wyświetlić IdPracownika oraz jako kolumny liczbę sprzedaży w danym roku (lat są 4 i dokładnie wiem jakie)

Ma wyjść coś w tym stylu:

Idprac | 2001 | 2002 | 2003 | 2004

111 | 2 | 23| 7 | 11

Wiem że należy tutaj użyć CASE. Na razie kombinuję i mam coś takiego:

SELECT [SalesPersonID], COUNT(CASE WHEN YEAR([ShipDate]) = 2001 THEN 1 ELSE 0) AS r2001
FROM [Sales].[SalesOrderHeader]
GROUP BY [SalesPersonID], YEAR([ShipDate])

Jednak dostaję błąd:
Msg 102, Level 15, State 1, Line 5
Incorrect syntax near ')'.

0

Chociaż lepiej jakby to zrobić za pomocą PIVOT

0

Brakuje END.
Powinno być: COUNT(CASE WHEN YEAR([ShipDate]) = 2001 THEN 1 END) AS r2001
Nie może być też 0 po ELSE, bo te 0 też są wartościami, więc też je policzy... No chyba żeby SUM dać...

1 użytkowników online, w tym zalogowanych: 0, gości: 1