2014-12-23 3 views
0

좋아, 그래서 나는 새로운 데이터뿐만 아니라 오래된 데이터를 유지하기 위해 테이블을 당긴다. player_Id와 Rank_id 만 있으면되지만 하나의 레코드 만 필요하므로 가장 높은 순위의 ID가있는 레코드가 필요합니다. 순위 ID의 범위는 0에서 6까지입니다. 생각했던 코드를 사용하면 각 순위별로 각 플레이어의 기록을 얻을 수 있습니다. 이 문제를 해결할 수있는 방법이 있어야한다는 것을 알고 있지만 어떻게 해야할지 잘 모릅니다.가장 높은 값을 가진 정보를 얻는 방법

아래 코드는 제가 사용하려고 시도한 코드입니다. 난 당신이 SQL Server를 사용하는 추측하고있어

Select Player_ID 
,Max(Rank_ID) as Rank_ID 

From dbo.Tiered_Rank_Player 

Group by Player_Id 
,Rank_ID 
+0

? 내림차순과 1 레코드 제한으로 처리됩니다. –

+0

... 오,'dbo.'는 아마도 MS SQL Server ('TOP N'을 사용)를 의미합니까? –

+0

나는 아직도이 모든 것에 정말 새로운 것이므로 RDBMS가 무엇을 의미하는지 설명 할 수있을 것입니다. 두 번째 의견을 바탕으로 SSMS 2008을 사용하여 SQL 2000 Server를 사용하고 있다는 사실을 알고 싶습니다. –

답변

0
내 생각

, 당신은 지금까지 그의 가장 높은 순위로이 찾고 있습니다 :

Select Player_ID, Max(Rank_ID) as Rank_ID From dbo.Tiered_Rank_Player 
    Group by Player_Id 
사용하고있는 RDBMS
+0

왜 투표가 늦습니까? –

+0

이것이 왜이 문제를 해결했는지 알 수 없습니다. 나는 그 그룹에 컬럼을 넣는 데 너무 익숙해 졌는데 여기에 나와있는 Rank_ID가 거기에 나열되어 있었기 때문에 그 부분을 제거함으로써 여기에서 문제가 해결되었다. –

+0

누군가 질문을 제대로 읽지 않았을 수 있습니다. 나는 그것이 당신의 문제를 해결했기 때문에 기쁘다. :) –

0

...

그러나 당신은

의 콤보를 할 수

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 
각 선수에 대한 기록을 원하는 경우
관련 문제