我的查询会返回这样的结果。 sqlfiddle
COLOR_NAME
RED
RED
RED
GREEN
GREEN
BLUE
WHITE
WHITE
WHITE
WHITE
WHITE
WHITE
我需要用上面的结果显示数字。所以期望的结果是这样的。
COLOR_NAME SORT_NO
RED 10
RED 11
RED 12
GREEN 10
GREEN 11
BLUE 10
WHITE 10
WHITE 11
WHITE 12
WHITE 13
WHITE 14
WHITE 15
我怎样才能在ms sql中实现这个目标?
答案 0 :(得分:3)
您可以使用ROW_NUMBER()功能
select COLOR_NAME
, 9 + ROW_NUMBER() OVER (PARTITION BY COLOR_NAME ORDER BY ID) AS Sort_No
from TB_COLOR