在SQL中,ROW_NUMBER()函數(shù)用于給結(jié)果集中的每一行分配一個(gè)唯一的數(shù)字。它常用于對(duì)結(jié)果集進(jìn)行排序或篩選。
ROW_NUMBER()函數(shù)的語(yǔ)法如下:
ROW_NUMBER() OVER (ORDER BY column1, column2, ...)
其中,ORDER BY
子句用于指定排序的列,可以按照多個(gè)列進(jìn)行排序。例如:
SELECT column1, column2, ..., ROW_NUMBER() OVER (ORDER BY column1, column2, ...)
FROM table_name
下面是一個(gè)示例,使用ROW_NUMBER()函數(shù)對(duì)"Employees"表中的記錄進(jìn)行排序,并返回每個(gè)記錄的行號(hào):
SELECT EmployeeID, FirstName, LastName, ROW_NUMBER() OVER (ORDER BY LastName, FirstName) AS RowNumber
FROM Employees
這將返回一個(gè)結(jié)果集,包含每個(gè)記錄的EmployeeID、FirstName、LastName和RowNumber列。RowNumber列將分配一個(gè)唯一的行號(hào),根據(jù)LastName和FirstName進(jìn)行排序。