Tengo dos tablas, una es para noticias y la otra para comentarios y quiero obtener el recuento de los comentarios cuyo estado se ha establecido como aprobado.
SELECT
ccc_news . *,
count(if(ccc_news_comments.id = 'approved', ccc_news_comments.id, 0)) AS comments
FROM
ccc_news
LEFT JOIN
ccc_news_comments
ON ccc_news_comments.news_id = ccc_news.news_id
WHERE
`ccc_news`.`category` = 'news_layer2'
AND `ccc_news`.`status` = 'Active'
GROUP BY
ccc_news.news_id
ORDER BY
ccc_news.set_order ASC
LIMIT 20
Pero el problema con esta consulta es que el valor mínimo que se obtiene para la columna de comentarios es 1, ya sea que exista algún comentario correspondiente a esa noticia o no.
Cualquier ayuda sería muy apreciada.