2011-08-24 41 views
-4

我有一個studentResult表,其中列名是TotalMarks,學生的總分數是給定的..我必須確定學生的位置(即第一,第二,第三,第四等)。 。)基於他們在考試中獲得的TotalMarks。如何在SQL Server 2005中使用存儲過程來確定這一點?使用SQL Server 2005確定學生的位置

+4

請嘗試第一 – JNappi

回答

3

猜測的基礎上,沒有模式的描述,一個學生是否在一排或代表多次,在關係的情況下做什麼,等

SELECT 
    StudentID, Name, TotalMarks, 
    Place = ROW_NUMBER() OVER (ORDER BY TotalMarks DESC) 
FROM 
    dbo.StudentResult 
ORDER BY 
    TotalMarks DESC; 
+0

+1 - 儘管我認爲在這種情況下'RANK'更合適 – Lamak

+0

@Lamak你可能是對的。但有了這樣模糊的規格,誰知道......也可能是'DENSE_RANK()'。 –