Mysql 像讨厌和打击一样计数

Mysql 像讨厌和打击一样计数,mysql,count,group-by,Mysql,Count,Group By,你好,我有4张这样的桌子 如何让sql sintax变成那样 谢谢你D下面的查询将列出计算机表中的所有记录,无论它在其他表中是否有匹配的id,因为使用了左联接。单独计算计算机点击数的原因是,如果有多个计算机匹配到表LIKE,则可能产生无效计数 SELECT a.ID, a.Name, SUM(sta_like = 1) total_like, SUM(sta_like = 0) total_dislike, COALESCE(totalHit

你好,我有4张这样的桌子

如何让sql sintax变成那样


谢谢你D

下面的查询将列出
计算机
表中的所有记录,无论它在其他表中是否有匹配的
id
,因为使用了
左联接
。单独计算计算机点击数的原因是,如果有多个
计算机
匹配到表
LIKE
,则可能产生无效计数

SELECT  a.ID, a.Name, 
        SUM(sta_like = 1) total_like,
        SUM(sta_like = 0) total_dislike,
        COALESCE(totalHits, 0) total_hits
FROM    Computer a
        LEFT JOIN `LIKE` b
            ON a.id = b.id_com
        LEFT JOIN
        (
            SELECT  id_com_hits, COUNT(*) totalHits
            FROM    hits
            GROUP   BY id_com_hits
        ) c ON a.ID = c.id_com_hits
GROUP   BY a.ID, a.Name

嗨,谢谢,这是工作。非常感谢D