sql oracle分页sql语句
2009-03-12 09:52
399 查看
使用sql,和oracle数据库进行分页可以有以下三种方法! 下面让我们看一看如果我们要在数据库中取第1000条到第1010条的数据这两种方法是怎么实现的. 1. 使用临时表的方法. (在系统中主要是直接写Sql语句来做) a) 按所需的排序方式排好序 b) 创建临时表 c) 从数据库里取出第0条 到 第1010条的数据 d) 把这些数据放入临时表中 e) 把临时表再按与 a) 相反的排序方式排好序 f) 然后只需把临时表中的前10条显时出来 g) 销毁临时表 2. 使用 object 的方法 a) 按所需的排序方式排好序 b) 从数据库里取出第0条 到 第1010条的数据 c) 倒着从这1010条数据中取10条 放入一个 object中 d) 把这个 object里的记录 完全倒置一下 e) 把 object里的数据显示出来 显然 第二种 方法优于第一种方法 它减少了系统创建, 销毁临时表所需耗费的资源, 但是它们都有一个共同的弱点. 那就是 它们都要从数据库里取出第0条 到 第1010条的数据 这样就造成了 查询出的记录数很少,但网络传输数据量很大! 因此比较好的分页做法应该是: 每次翻页的时候只从数据库里检索页面大小的块区的数据。这样虽然每次翻页都需要查询数据库,但查询出的记录数很少,网络传输数据量不大,如果使用连接池更可以略过最耗时的建立数据库连接过程。而在数据库端有各种成熟的优化技术用于提高查询速度,比在应用服务器层做缓存有效多了。 对于SqlServer 数据库 如要到得第1000-1010条记录:
通过以上分页方式的改变,对我们系统的性能有很大的提升 我有个客户使用的是oracel数据库 其中文档数目为 12万条 ,当我们对这张表时行搜索的时候 使用第一种方法进行分页时,页面显示的时间约为10秒左右,而使用第三种方法而现在页面显示时间只需要2-3秒左右. |
相关文章推荐
- ORACLE分页SQL语句
- oracle中分页查询的sql语句
- oracle 查询分页sql语句
- ORACLE分页SQL语句
- oracle 分页查询和sql server 分页查询 的sql语句
- oracle 分页sql语句的深入理解
- ORACLE分页SQL语句
- SQL SERVER ,ORACLE 8i,DB2三种数据库分页SQL语句
- oracle排序并分页sql语句
- Oracle用SQL语句分页
- Oracle 分页查询的 SQL 语句
- jsp + oracle 排序分页 高效sql语句
- SQL server、MySQL、Oracle分页查询SQL语句
- mysql,mssql,oracle分页通用sql语句
- 使用标准SQL语句实现分页操作(Oracle)
- oracle 分页 很棒的sql语句
- ORACLE分页SQL语句
- springmvc mybatis 分页 控制层及sql语句 oracle mysql easyui
- ORACLE分页SQL语句
- Oracle查询分页SQL语句