Это работаетMySQL - Выберите с COUNT возвращения подряд NULL
SELECT DISTINCT b.b_id
FROM b INNER JOIN c
ON b.b_id=c.b_id
WHERE c.active='yes' AND b.featured='no'
Когда результаты должны быть 0 возвращаемых строк, это возвращает пустую строку с Count = 0
SELECT DISTINCT b.b_id, COUNT(c.c_id) AS count
FROM b INNER JOIN c
ON b.b_id=c.b_id
WHERE c.active='yes' AND b.featured='no'
Я делаю что-то неправильно?
Когда вы используете функцию агрегации ('COUNT'), вам необходимо« GROUP BY »неагрегированные столбцы. MySQL не должен даже допускать этот запрос, но это приводит к непредсказуемому поведению ... – bernie
ahh, ok, поэтому я удалил DISTINCT и добавленную группу GROUP by b.b_id в конце запроса. это правильно? – lewicki