SQL Server 2005 出现问题:
假设我有一个表格 PLAYER
( string播放器, int 评分, bol active
) 和这个查询 :
SELECT PLAYER.player AS NAME,
PLAYER.score AS SCORE,
POSITION = CASE WHEN PLAYER.Active THEN RANK()OVER(ORDER BY score desc) else NULL end
from PLAYER
问题是当玩家不活动时, 所产生的位置不是连续的 。
例如:
JOHN,10000,1
PETER,5000,NULL (NOT ACTIVE)
CHARLES,2500,3 (SHOULD HAVE POSITION 2, NOT 3)
我为我可怕的英语感到抱歉,我希望我已经解释了我的观点