oracle 怎么查询 一个表中的 最后 10条数据

oracle 怎么查询 一个表中的 最后 10条数据
2025-04-04 17:16:52
推荐回答(2个)
回答1:

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

SELECT ROWNUM RN1,A.* FROM A;//从表A中获取记录,并用rownum生成RN1

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

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

3、通过RN2取小于等于10的数据记录

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

回答2:

1.先对其经行排序 ,oracle默认是升序 ,最后取降序的前十条就是最后的十条
2.select * from (select t.*,rownum n from dual t) where n > (select count(1)-10 from dual ) and n <= (select count(1) from dual )