sql >> Database >  >> RDS >> Mysql

Tel met IF-voorwaarde in MySQL-query

Gebruik sum() in plaats van count()

Probeer het hieronder:

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. Een experthandleiding voor Slony-replicatie voor PostgreSQL

  2. Een variabele periode in een interval gebruiken in Postgres

  3. Vergelijking van SQL-tekenreeksen, groter dan en kleiner dan operators

  4. Tekst zoeken en vervangen in MySQL-database met behulp van SQL