开发者

How to get the serial number of the record after executing a query?

How do I get to know a particular user's rank, after the query is executed? This is in SQL Server 2005. For example, the query that I use is:

CREATE PROCEDURE [dbo].[getmyRankinContest]
@UserID int 
AS
BEGI开发者_运维问答N

   select userid,
   from
   invitecount
   group by userid
   order by sum(points) desc
END

But @UserID is my UserID. How can I add @UserID in the above code to get my rank? Any suggestions, please?

Thanks in advance..


You can try something like this:

CREATE PROCEDURE [dbo].[getmyRankinContest] @UserID int 
AS
BEGIN
    ;WITH CTE AS
    (
        SELECT userId, RANK() OVER(ORDER BY Points DESC) Ranking
        FROM (  SELECT userid, SUM(points) Points
                FROM invitecount
                GROUP BY userid) A
    )
    SELECT *
    FROM CTE 
    WHERE UserId = @UserID
END
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜