网上有关于orcale实现分页,看了下都是转载的那个4个方法的总结,搞得现在都不知道那个是原作者了。我实验了下前两种方法效果不错,也比较简单,记下:
1. select * from assets t where rownum<30 minus select * from assets v where rownum<20
如网上所说该方法效率较低,同时不支持结果排序。
2.select * from (select t.*, rownum r from assets t order by assetsno) x where x.r between 10 and 20
该方法简单明了,支持排序,效率如何未知,但肯定比第一个要好。
以上两种方法都是有效的,至于网上的其他两个方法,我不懂sql脚本所以先弃之不理。有兴趣可以google或百度下几乎都是一摸一样的。
本文介绍了两种在Oracle数据库中实现分页的有效方法。第一种方法利用了rownum进行记录选择,但不支持排序且效率较低。第二种方法通过创建一个包含rownum的子查询来实现分页,并支持结果排序,其效率优于第一种。
1万+

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



