SQL Query无法找到获取结果的方法

时间:2014-03-31 04:13:17

标签: php mysql sql

我无法找到获得此结果的方法:

|-------------|--------|
| username    |  rank  |
--------------|--------|
| takami      |  25    |
| mnk         |  24    |
------------------------

我需要列出所有用户的排名,其中排名是该用户所有问题和答案的数量的总和,有人可以帮助我进行查询吗?我试了好几个小时,我不能查询得到这个结果。

This is the model of DB

非常感谢

1 个答案:

答案 0 :(得分:2)

我相信会有使用子查询的答案,但我想给你一个没有子查询的答案:

SELECT user.name, count(distinct question.id) + count(distinct answer.id) from user 
left join
answer on user.id = answer.user_id
left join
question on user.id =question.user_id
group by user.name

请查看sqlfiddle