mysql - 最多的电影属于哪个等级?

标签 mysql sql rank

您好,我有以下数据模型。

enter image description here

我需要找到最多电影所属的评分排名。 我编写了以下查询,但我的培训师告诉我这是错误的。

SELECT
  COUNT(DISTINCT r.movieratingid) AS rank
FROM
  Rating r JOIN movie m ON r.movieratingid = m.rating_movieratingid
GROUP BY count(distinct r.movierating)
HAVING count(m.movieid) = (SELECT sum(m1.movieid) from movie m1
Where m.movieid = m1.movieid)

请告诉我上面的查询有什么问题。

<小时/>
  • 电影表
<小时/>

enter image description here

<小时/>
  • 评分表
<小时/>

enter image description here

最佳答案

我不确定我完全理解你..你可以试试这个

SELECT movierating, COUNT(r.movieratingid) AS rank
FROM
Rating r 
INNER JOIN movie m ON r.movieratingid = m.rating_movieratingid
GROUP BY r.movierating 

关于mysql - 最多的电影属于哪个等级?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15653104/

相关文章:

javascript - 发送表单而不显示结果

mysql - 无法在带有子查询的 Mysql 过程中传递参数

php - 获取带有点赞和评论的帖子 - 一个查询?

mysql - 如何获取特定列中非 NULL 行的百分比?

python - 在 Pandas 中转置列和排名值

PHP\MySql 查询错误

mysql - mysql按多列分组获取记录

sql - 如何在 SQL 查询中获取父值和最后替换的值

mysql - 给出 mysql 数据库列排名

用 R 对矩阵的行 A 元素和列元素进行排序