如果数据表的主键未设置自动编号id int identity(1,1)或者数据表中未设置主键,那么很难观察查询的结果集中记录的行号。
SQL2005中调用ROW_NUMBER()函数来显示数据在结果集中的行号。
语法如下:ROW_NUMBER()over([<partion_by_column>]<order_by_column>
<partion_by_column>:将From子句生成的结果集添加到应用了ROW_NUMBER()函数的分区
<order_by_column>:确定应用了ROW_NUMBER()函数的分区中行的顺序。即指定分区内排序的字段和方式
例:
SELECT row_number()over(order by 成绩 )as score,学生姓名,学生学科,成绩 from dbo.StuScore