Problém je v tom, že CASE
příkaz nebude fungovat způsobem, jakým se jej pokoušíte použít. Můžete jej použít pouze k přepnutí hodnoty jednoho pole v dotazu. Pokud rozumím tomu, o co se snažíte, možná budete potřebovat toto:
SELECT
ActivityID,
FieldName = CASE
WHEN ActivityTypeID <> 2 THEN
(Some Aggregate Sub Query)
ELSE
(Some Aggregate Sub Query with diff result)
END,
FieldName2 = CASE
WHEN ActivityTypeID <> 2 THEN
(Some Aggregate Sub Query)
ELSE
(Some Aggregate Sub Query with diff result)
END