Maison >base de données >tutoriel mysql >Comment compter avec précision les commentaires approuvés dans MySQL à l'aide des conditions IF ?

Comment compter avec précision les commentaires approuvés dans MySQL à l'aide des conditions IF ?

Barbara Streisand
Barbara Streisandoriginal
2024-11-30 00:15:12377parcourir

How to Accurately Count Approved Comments in MySQL Using IF Conditions?

Comptage des commentaires avec des conditions IF dans les requêtes MySQL

Déterminez le nombre de commentaires approuvés pour chaque article d'actualité en tirant parti des conditions SQL IF.

Problème :

Une requête précédente a récupéré un commentaire compte, mais même lorsqu'il n'y avait aucun commentaire approuvé associé à un article d'actualité, il renvoyait une valeur minimale de 1.

Solution :

Pour corriger ce problème, remplacez la fonction count() avec la fonction sum() dans la condition IF. Voici la requête révisée :

SELECT
    ccc_news . * , 
    SUM(if(ccc_news_comments.id = 'approved', 1, 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 

En utilisant la fonction sum(), la requête compte désormais correctement le nombre de commentaires approuvés pour chaque article d'actualité, renvoyant 0 lorsqu'il n'y a aucun commentaire approuvé. Cela garantit des résultats précis et cohérents pour le comptage des commentaires.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn