Oracle数据库查询表的后十条

直接上可行的方案

SELECT * FROM (SELECT B.*,ROWNUM RN2 FROM (SELECT ROWNUM RN1,A.* FROM table_name A) B ORDER BY RN1 DESC) WHERE ROWNUM<11;

直接修改上面红色的,将你想查询的表替换table_name即可

步骤分析

1.通过rownum对数据库的记录进行编号

SELECT ROWNUM RN1,A.* FROM table_name A;

这个sql可以查询到带有编号的表数据

2.通过RN1的标记进行倒序排序

SELECT B.*,ROWNUM RN2 FROM (SELECT ROWNUM RN1,A.* FROM table_name A) B ORDER BY RN1 DESC;

这个sql可以将上面的数据倒序排列

3.将倒序排列的数据找到前十条,就是一开始准备查询的后十条


SELECT * FROM (SELECT B.*,ROWNUM RN2 FROM (SELECT ROWNUM RN1,A.* FROM table_name A) B ORDER BY RN1 DESC) WHERE ROWNUM<11;

猜你喜欢

转载自blog.csdn.net/weixin_40903194/article/details/83819234
今日推荐