У меня есть следующий простой запрос,Если условие условие на агрегатные функции
SELECT US_LOGON_NAME as Username,
COUNT(I.IS_ISSUE_NO) as Issues
FROM ISSUES I JOIN USERS U ON I.IS_ASSIGNED_USER_ID = U.US_USER_ID
WHERE I.IS_RECEIVED_DATETIME BETWEEN 20110101000000 AND 20110107000000
GROUP BY U.US_LOGON_NAME;
Где я хочу, чтобы добавить дополнительные COUNT() функции в списке выбора, но накладывают определенные условия, где на них. Это делается с помощью оператора CASE() каким-то образом? Я попытался поставить предложения Where внутри списка выбора, и это, похоже, не разрешено. Я не уверен, что здесь понадобятся подзапросы, но я так не думаю.
Например, я хочу функцию один COUNT(), которая учитывает только вопросы в пределах определенного диапазона, то другой в другом диапазоне или других различных условий и т.д.:
SELECT US_LOGON_NAME as Username,
COUNT(I.IS_ISSUE_NO (condition here)
COUNT(I.IS_ISSUE_NO (a different condition here)
и т.д ...
Все еще сгруппированы по имени входа.
Спасибо.
Не 'COUNT' рассчитывать' 0'? Я думал, что «NULL» не учитывается. –
@Kirk Woll: Где он говорит COUNT в своем ответе? –
Да, но Адам не COUNTING, он SUMming. –