Problem polega na tym, że CASE
oświadczenie nie będzie działać w sposób, w jaki próbujesz go użyć. Możesz go używać tylko do przełączania wartości jednego pola w zapytaniu. Jeśli rozumiem, co próbujesz zrobić, możesz potrzebować tego:
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