Mysql COUNT(*) on multiple tables

后端 未结 5 843
我寻月下人不归
我寻月下人不归 2020-12-23 22:55

What\'s wrong with this query:

SELECT co.*, mod.COUNT(*) as moduleCount, vid.COUNT(*) as vidCount 
 FROM courses as co, modules as mod, videos as vid 
 WHERE         


        
5条回答
  •  误落风尘
    2020-12-23 23:39

    SELECT co.*, m.ModCnt as moduleCount, v.VidCnt as vidCount 
    FROM courses co
    INNER JOIN (
            select count(*) AS ModCnt, co.id AS CoID
            from modules 
            group by co) m
        ON m.CoID = co.id
    INNER JOIN (
            select count(*) AS VidCnt, co.id AS CoID
            from videos
            group by co) v
        ON v.CoID = co.id   
    INNER JOIN videos vid 
        ON vid.course_id = co.id 
    ORDER BY co.id DESC
    

提交回复
热议问题