Рассмотрим:
Запрос1: Количество членов
SELECT Format([DispatchDateTime],"yyyymm") AS YrMo, AlarmNumFK, Count(MemberID) AS CntMembers
FROM RespondingMembers INNER JOIN Calls ON RespondingMembers.AlarmNumFK = Calls.AlarmNum
GROUP BY Format([DispatchDateTime],"yyyymm"), AlarmNumFK;
Запрос2: Количество подсчетов
SELECT Format([DispatchDateTime],"yyyymm") AS YrMo, Count(Calls.AlarmNum) AS CntAlarms
FROM Calls
GROUP BY Format([DispatchDateTime],"yyyymm");
Запрос3:
SELECT CountMembers.YrMo, CntAlarms, Avg(CountMembers.CntMembers) AS AvgOfCntMembers
FROM CountAlarms INNER JOIN CountMembers ON CountAlarms.YrMo = CountMembers.YrMo
GROUP BY CountMembers.YrMo, CountAlarms.CntAlarms;
Все в одном:
SELECT CountMembers.YrMo, CntAlarms, Avg(CntMembers) AS AvgOfCntMembers
FROM
(SELECT Format([DispatchDateTime],"yyyymm") AS YrMo, Count(AlarmNum) AS CntAlarms
FROM Calls
GROUP BY Format([DispatchDateTime],"yyyymm")) AS CountAlarms
INNER JOIN
(SELECT Format([DispatchDateTime],"yyyymm") AS YrMo, AlarmNumFK, Count(MemberID) AS CntMembers
FROM RespondingMembers INNER JOIN Calls ON RespondingMembers.AlarmNumFK = Calls.AlarmNum
GROUP BY Format([DispatchDateTime],"yyyymm"), AlarmNumFK) AS CountMembers
ON CountAlarms.YrMo = CountMembers.YrMo
GROUP BY CountMembers.YrMo, CountAlarms.CntAlarms;
Обратите внимание, что я не использовал ни пробелы, ни знаки препинания / специальные символы в соглашении об именах.