oracle分页查询
1.一个通用的格式如下:
--rownum 是记录序号(1,2,3...),
--注意:如果 SQL 语句中有 ORDER BY ... 排序的时候,rownum 居然是先“标号”后排序
SELECT * FROM
(
SELECT A.*, rownum r
FROM
(
SELECT *
FROM tas_asset
--ORDER BY PubTime DESC --排序只能写在这里,不能写在外面,要特别小心。
) A
WHERE rownum <= 10
) B
WHERE r > 5;
2.如果不需要排序,则可以少一层嵌套
select * from (
select rownum r,tas_asset.* from tas_asset --这里就算有排序,事实上也没用。
)
where r between 10 and 20
3.简单的查找最大值或最小值时,也可以这样:
--取最大的几个值:
Select *
From (Select * From tas_asset Order by id desc,place_id Desc)
Where RowNum < 5;
--取最大的几个值:
Select *
From (Select * From tas_asset Order by id asc,place_id asc)
Where RowNum < 5;

本文介绍了Oracle数据库中实现分页查询的三种方法。包括使用ROWNUM进行带排序和不带排序的分页查询,以及如何通过ORDER BY子句正确获取指定范围的数据。此外,还展示了如何利用ROWNUM来获取表中的最大或最小几条记录。
31万+

被折叠的 条评论
为什么被折叠?



