What about:
;WITH CTE AS
(SELECT
RowNum = ROW_NUMBER() OVER(ORDER BY Reputation DESC),
Users.Reputation
FROM
Users
)
SELECT TOP 3
RowNum, Reputation
FROM
CTE
ORDER BY
RowNum
This is a CTE (Common Table Expression) expression, available in SQL Server 2005 and newer, combined with a ranking function ROW_NUMBER(), also available in 2005 and later.
" " . ROW_NUMBER() , OVER (ORDER BY ....). , # 1, # 2 ..
CTE : MSDN -
ROW_NUMBER : MSDN ROW_NUMBER