您好我有一个名为rating的表格,结构如下
userId int,movieId int,rating number,time varchar
我需要获取最大用户投票的movieId,对于exp
userId movieId rating time 0001, 3, 5.0, 2312345
0001, 5, 3.0, 2312323
0001, 7, 4.0, 2312124
0002, 2, 3.0, 2312453
0002, 3, 5.0, 2312323
0002, 7, 3.0, 2315642
0003, 3, 5.0, 2312764
0004, 3, 4.0, 2312146
0004, 7, 3.0, 2312321
在这部电影中,3个用户被5.0个用户投票,这是最大用户数的最高评级。
如何使用sql查询
执行此操作答案 0 :(得分:2)
如果您想要一部电影,请进行汇总并使用order by
和limit
:
select movieId, rating, count(distinct userId) as NumUsers
from rating
group by movieId, rating
order by rating desc, NumUsers desc
limit 1;
答案 1 :(得分:0)
如何使用此查询:
SELECT movieId, rating, count(distinct userId) votecount
from rating
group by movieId, rating
这里,谁拥有最高票数,赢了。