2016-04-28 55 views
-1

基础数据模型:http://i.imgur.com/WKWBDd8.jpgMYSQL MULTI JOINS with COUNTS

嗨,thx求救!

我希望做一个查询来获取的问题数(计数),并从课程答案的数目,

SELECT 
courses.name, 
courses.description, 
courses.digest, 
courses.views, 
categories.icon, 
COUNT(answers.id), 
COUNT(problems.id) 
FROM 
    courses 
     INNER JOIN 
    topics ON topics.id = courses.topics_id 
     INNER JOIN 
    categories ON categories.id = topics.categories_id 
     LEFT JOIN 
    problems ON problems.courses_id = courses.id 
     LEFT JOIN 
    answers ON answers.problems_id = problems_id 
WHERE 
    courses.accounts_id = 1 
GROUP BY courses.id 

但是,这是行不通的任何想法?

THX

+0

是错误信息还是意外行为分类?如果没有,请与我们分享。 – Shadow

+0

可能是一个拼写错误,但在你最后一次加入时,你正在执行'answers.problems_id = problems_id'这是正确的吗?应该是problems.id吗? – Matt

回答

0

可能是一个错字,但你的最后一个加入你正在做

answers.problems_id = problems_id

而且你必须在你的问题表上没有problems_id列或只是答案表上的所有表。

是否应该是problems.id

+0

Thx!我将其改为problems.id,但我仍然提出一个新的查询来解决答案。 –