如何在SQL Server中查找表中的最后一个row_number?[duplicate]

h79rfbju  于 2022-12-17  发布在  SQL Server
关注(0)|答案(2)|浏览(178)

此问题在此处已有答案

(18个答案)
六年前关闭了。
问:如何在SQL Server中查找表中的最后一个row_number?例如,我有一个名为Employee的表,没有任何ID,也不想添加任何标识列。

EmpName | EmpSalary
--------+----------
Amit    | 5000
Sumit   | 4500
Ajeet   | 5600

我试过这个:

SELECT 
    ROW_NUMBER() OVER(ORDER BY EmpName) row_no 
FROM
    Employee

但是它返回这个:

row_no
1
2
3

但是,如果3是最后一个row_no,那么我想要:

row_no
3

现在请你帮我解决这个问题。

7jmck4yq

7jmck4yq1#

With cte as
(
SELECT ROW_NUMBER() OVER(ORDER BY EmpName) row_no from Employee 
)
Select max(row_no) from cte

使用cte

kb5ga3dv

kb5ga3dv2#

您可以使用以下查询:

SELECT TOP 1 row_no FROM
(
   SELECT ROW_NUMBER() OVER(ORDER BY EmpName) row_no FROM Employee
)AS Emp ORDER BY row_no DESC

相关问题