SQL:对SELECT语句返回的行进行编号

Jak*_*ake 4 sql sql-server sql-server-2000

假设我有一个SELECT语句返回一些结果集.有什么方法可以用以下方式对我的结果进行编号:

SELECT TOP 3 Name from PuppyNames ORDER BY NumberOfVotes

会给我......

流浪者

弗雷迪克鲁格

...但我想要...

1,Fido

2,罗孚

3,弗雷迪克鲁格

当然,逗号表示这些数字在他们自己的专栏中.[我正在使用SQL Server 2000.]

Bil*_*win 5

在Microsoft SQL Server 2005中,您具有ROW_NUMBER()完全按照您的需要执行操作的功能.

如果您遇到SQL Server 2000,典型的技术是创建一个新的临时表来包含查询结果,再添加一IDENTITY列并生成增量值.请参阅此处讨论此技术的文章:http: //www.databasejournal.com/features/mssql/article.php/3572301/RowNumber-function-in-SQL-Server-2005.htm