MySQL 쿼리에서 IF 조건이 포함된 댓글 계산
SQL IF를 활용하여 각 뉴스 기사에 대해 승인된 댓글 수를 결정합니다. 조건.
문제:
이전 쿼리에서 댓글 수를 가져왔지만 뉴스 기사와 관련하여 승인된 댓글이 없는 경우에도 최소값 1을 반환했습니다. .
해결책:
다음으로 이 문제를 해결하려면 IF 조건에서 count() 함수를 sum() 함수로 바꾸십시오. 수정된 쿼리는 다음과 같습니다.
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
sum() 함수를 사용하여 쿼리는 이제 각 뉴스 기사에 대해 승인된 댓글 수를 올바르게 계산하고, 승인된 댓글이 없으면 0을 반환합니다. 이렇게 하면 댓글 계산에 대한 정확하고 일관된 결과가 보장됩니다.
위 내용은 IF 조건을 사용하여 MySQL에서 승인된 댓글을 정확하게 계산하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!