У меня есть две таблицы.
[Letter Status]
Letter_ID Customer_ID* Letter_Status
и
[Customer Details]
Customer_ID* Ethnicity Gender
* обозначает ВНУТРЕННЕЕ СОЕДИНЕНИЕ.
Я хочу посчитать количество Letter_Status = 'Complete' для ВСЕХ мужчин, для КАЖДОГО этнического происхождения.
SELECT Ethnicity, Count(Letter_Status) AS N
FROM [Customer Details] INNER JOIN [Letter Status]
ON [Customer Details].Customer_ID = [Letter Status].Customer_ID
WHERE [Gender] = 'Male'
AND [Letter_Status] = 'Complete'
ORDER BY Ethnicity;
Я получаю эту ошибку:
«Вы попытались выполнить запрос, который не включает указанное выражение« этническая принадлежность »как часть агрегатной функции»
Я не знаю, как это исправить - я перепробовал все, что знаю.
Моя вторая проблема - мой запрос не будет определять ИЛИ упорядочивать мои результаты по уникальной (или ОТЛИЧНОЙ) этнической принадлежности. Предполагая, что кто-то может помочь мне преодолеть вышеуказанную ошибку (и я надеюсь, что это произойдет), мои данные будут выглядеть так:
Ethnicity N
Asian 1
Caucasian 1
Hispanic 1
Asian 1
Hispanic 1
когда действительно, мне нужно, чтобы это выглядело так:
Ethnicity N
Asian 12
Caucasian 9
Hispanic 7
Я почти уверен, что мне нужна функция Count (Distinct), но, к сожалению, я застрял с MS Access 2007, и это не поддерживается.
Я нашел это описание, но оно просто смутило меня, и я не смог успешно применить его к своим данным.
http://blogs.office.com/b/microsoft-access/archive/2007/09/19/writing-a-count-distinct-query-in-access.aspx