2013-03-27 54 views
0

嗨,我有以下數據模型。最高電影的評級等級是什麼?

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

+0

你可以給樣本記錄你想要的結果? – 2013-03-27 06:35:43

+0

我的培訓師告訴我不要創建一個數據庫並測試它,我必須分析數據模型,並且只寫入查詢 – user1844638 2013-03-27 06:36:58

+0

那個數據模型非常大我已經將其剪下來在這裏顯示它 – user1844638 2013-03-27 06:38:49

回答

1

我不知道我理解你完全..你可以試試這個

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

嗨,我收到一個錯誤,無效使用組函數執行您的查詢。 – user1844638 2013-03-27 07:47:49

+0

編輯查詢trynow – alwaysLearn 2013-03-27 07:49:33

+0

嗨,這個作品,但如何檢查當他們兩個具有相同的評價? – user1844638 2013-03-27 07:57:49

1

這將顯示在降與評價電影的編號順序評級。

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