2009-09-10 3 views
1

Я пытаюсь создать серию запросов в Access, которые подсчитывают количество клиентов каждой этнической группы в каждом из 77 округов.Как мне вернуть функцию Count 0?

Вот SQL-код для одного из моих запросов, что я пытаюсь сделать это для ...

SELECT [ClientsByCounty-Asian].County, [ClientsByCounty-Asian].CountyName, Count([ClientsByCounty-Asian].Asian) AS CountOfAsian 
FROM [ClientsByCounty-Asian] 
GROUP BY [ClientsByCounty-Asian].County, [ClientsByCounty-Asian].CountyName; 

Этот запрос возвращает только 16 из 77 округов. Мне нужно отображать все 77 графств, даже если результат равен нулю, и нет записей.

Как я могу отобразить остальные 61 округа?

ответ

8

Если предположить, что ваши 77 графств хранятся в таблице под названием Counties:

SELECT c.CountyName, COUNT([ClientsByCounty-Asian].County) 
FROM Counties c 
LEFT JOIN 
     [ClientsByCounty-Asian] 
ON  [ClientsByCounty-Asian].County = c.County 
GROUP BY 
     c.County, c.CountyName 
+0

Я изменил уезды к имени таблицы я использую в базе данных, но это не будет работать. Я не слишком разбираюсь в SQL, так что простите меня за вопрос, но что такое «c». Спасибо за вашу помощь :) – 2009-09-10 15:18:32

+0

'c' - это псевдоним для таблицы' counties' (или что-то другое), так что вам не нужно вводить его каждый раз. Не могли бы вы разместить текст ошибки? – Quassnoi

+0

Он работает! Спасибо! Извините, у меня была опечатка в первый раз, я не видел ее сейчас. Большое вам спасибо, вы потрясающий! :) – 2009-09-10 15:35:49

Смежные вопросы