MySQL连接两个表,查找最大计数和排序依据

时间:2012-03-16 20:12:09

标签: mysql join

我是SQL的新手,在此之前我只使用简单查询,但现在我遇到了问题。 我有两张桌子。首先是评级

id  userid  value 
1   3       +
1   2       +
1   2       +

第二个是日记簿

id  userid  week    day     lesson  content 
1   2       1       1       6       Test!

所以现在我有一个问题。我需要:

1)按ID加入这些表格。

2)然后按评分表中的条目计数结果。

所以结果必须如下:

userid count
3      1
2      2

怎么做?谢谢您的任何帮助。

2 个答案:

答案 0 :(得分:3)

select daybook.userid, count(*) as count 
    from daybook, rating 
    where daybook.userid = rating.userid
    group by daybook.userid
    order by count desc

但你甚至不需要日记表:

select userid, count(*) as count
   from rating
   group by userid
   order by count desc

答案 1 :(得分:2)

你需要做这样的事情:

SELECT count(id), rating.userid
FROM rating
JOIN daybook ON daybook.userid = rating.userid
GROUP BY userid