Ich habe eine Abfrage wie dieseWie kann ich eine Aggregatfunktion für einen Ausdruck ausführen, der ein Aggregat oder eine Unterabfrage enthält?
SELECT Id
,sum(CASE
WHEN ErrorId NOT IN (
,10
,11
,12
,13
)
THEN 1
ELSE 0
END) errorCount
FROM Table
group by Id
Ich mag die hartcodierte Liste der IDs nicht, und ich habe eine einfache Abfrage, die mir bekommen, was ich will
SELECT Id
,sum(CASE
WHEN ErrorId NOT IN (
select ErrorId from Errors where ErrorCategory = 'Ignore_Error'
)
THEN 1
ELSE 0
END) errorCount
FROM Table
group by Id
Allerdings, wenn ich versuchen, diese Ich bekomme
Kann eine Aggregatfunktion für einen Ausdruck, der ein Aggregat oder eine Unterabfrage enthält, nicht ausführen.
Was ist mein bester Weg?