2014-12-23 58 views
0

好吧,我從表中拉取舊數據以及新數據。我只需要player_Id和Rank_id,但我只需要一條記錄,而我需要該記錄成爲具有最高排名ID的記錄。 Rank id的範圍從0到6.有了我認爲可以工作的代碼,我爲每個玩家獲得了他們每個級別的記錄。我知道必須有辦法解決這個問題,但我不知道如何。如何獲得最高價值的信息

下面是我正在嘗試使用的代碼。

Select Player_ID 
,Max(Rank_ID) as Rank_ID 

From dbo.Tiered_Rank_Player 

Group by Player_Id 
,Rank_ID 
+0

您正在使用什麼RDBMS?降序和限制爲1記錄將做到這一點。 –

+0

...噢,'dbo.'可能意味着MS SQL Server(使用'TOP N')? –

+0

對於這一切,我還是一個新手,所以你可以向我解釋一下RDBMS的含義。基於第二條評論我猜你想知道我正在使用SSMS 2008從SQL 2000服務器上拉出是嗎? –

回答

0

我想,你正在尋找這一點,如果你想爲每個球員的紀錄,他的最高排名到現在:

Select Player_ID, Max(Rank_ID) as Rank_ID From dbo.Tiered_Rank_Player 
    Group by Player_Id 
+0

爲什麼選擇投票? –

+0

不知道爲什麼這得到了downvoted這解決了這個問題。我剛剛習慣了將組列放入組中,因爲我列出了Rank_ID,並通過刪除那部分來解決問題。 –

+0

也許,有人沒有正確地閱讀這個問題。我很高興它解決了你的問題... :) –

0

我猜你正在使用SQL Server ...

但是,你應該能夠在做的

Select TOP 1 Player_ID, Max(Rank_ID) as Rank_ID 
From dbo.Tiered_Rank_Player 
Group by Player_Id,Rank_ID 

喜歡你可以做的

任何組合
TOP Number 
TOP 5 

TOP Percentage 
TOP 5 PERCENT