sql >> Databáze >  >> RDS >> Mysql

Počítejte s podmínkou IF v dotazu MySQL

Použijte sum() místo count()

Zkuste níž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 


  1. ORA-21700:objekt neexistuje nebo je označen k odstranění pro Asociativní pole jako vstupní parametr volaný z ODP.NET

  2. Architektura SQL Server AlwaysOn ( Availability Group ) a instalace krok za krokem -2

  3. Komplexní průvodce, jak používat MySQL

  4. Použití dotazu Hibernace:dvojtečka je považována za parametr / escapující dvojtečku