使用row_number()或任何类似函数的数字而不是Number

时间:2013-10-01 09:40:34

标签: sql sql-server sql-server-2005 row-number

sql server中的row_number()表达式将返回1,2,3 ...

之类的数字

但是,当我在某些结果集上使用它时,我需要First,Second,Third ....

我有什么方法可以做到这一点吗?

1 个答案:

答案 0 :(得分:0)

这样的事情可能有所帮助,但你必须为你期望的每一个价值做到这一点。

CASE ROW_NUMBER() OVER(ORDER BY Id)
  WHEN 1 THEN 'First'
  WHEN 2 THEN 'Second'
  WHEN 3 THEN 'Third'
  ELSE CAST(ROW_NUMBER() OVER(ORDER BY Id) AS VARCHAR)
END

您还可以准备一个包含这些值的特殊表格并加入此表格,这样它就只能改变一些地方。