MySql Count не может показать 0 значений - PullRequest
0 голосов
/ 27 марта 2011

у меня две таблицы одна Подписка сотрудников и рассылки Сотрудник выглядит так:

Имя (рк) | Фамилия | Возраст

Почтовые подпункты

MailId (pk) | EmployeeName (fk) | Описание | Дата

Я хотел получить номер подписки для каждого клиента, поэтому я попробовал следующий запрос:

Select COUNT(c.Name) 
From Employee 
    INNER JOIN mailingSubscriptions as m ON c.Name = m.EmployeeName;

Это даст мне все подсчеты для каждого Сотрудника, у которого есть запись в почтовой подписке.

Моя проблема в том, что я хочу увидеть количество ВСЕХ сотрудников, включая тех, у которых нет записи (поэтому, чтобы показать 0), я попытался выполнить внешнее соединение слева / справа, но оно не будет работать. Я делаю что-то неправильно?

1 Ответ

5 голосов
/ 27 марта 2011
SELECT c.name, count(m.mailid)
FROM Employee 
   LEFT JOIN mailingSubscriptions as m ON c.Name = m.EmployeeName
GROUP BY c.name;
...