问题:如何在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
现在,请帮我解决这个问题。
答案 0 :(得分:1)
With cte as
(
SELECT ROW_NUMBER() OVER(ORDER BY EmpName) row_no from Employee
)
Select max(row_no) from cte
使用cte
答案 1 :(得分:1)
您可以使用此查询:
Select Top 1 row_no FROM
(
SELECT ROW_NUMBER() OVER(ORDER BY EmpName) row_no from Employee
)as EMP order by row_no desc