`

Web开发中一种用sql语句完成分页的高效率方法(1)

阅读更多
来源/作者:互联网 beyond_xiruo 2002-11-19 [评论(0条)]

 

一、Jsp方法如下:
**********************
<%@ page language="java" import="java.util.*,java.sql.*" %>
<%@ page contentType="text/html;charset=gb2312"%>
<jsp:useBean id="cn" scope="page" class="myConnection.Conn" /><!--引用数据库操作的bean,自己完成,这里不再赘述-->
<%
int curpage=1;//当前页
int page_record=20;//每页显示的记录数
//用下面的方法(sql查询完成,速度快)
curpage=Integer.parseInt(request.getParameter("page"));//获取传递的值,需要显示的页
ResultSet rs=cn.rsexecuteQuery("select top "+page_record+" * from tablename where id not in (select top "+(curpage*page_record)+" id from tablename order by id desc) order by id desc");
//本查询语句得到的是所要显示的1000页的20条记录,大致思路为——子查询排除需要显示的记录前的所有记录,父查询则对余下的记录进行降序排列
while(rs.next) {
  out.println(rs.getInt("id").toString());
}
rs.close();
%>
**********************
二、asp中的方法
*******************
<%@ LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<%
dim curpage=1'当前页
dim page_record=20'每页显示的记录数
curpage=request("page")'获取传递的值,需要显示的页
……'连接数据库操作代码省略
rs.open "select top "+page_record+" * from tablename where id not in (select top "+(curpage*page_record)+" id from tablename order by id desc) order by id desc",conn,1,3
'本查询语句得到的是所要显示的1000页的20条记录,大致思路为——子查询排除需要显示的记录前的所有记录,父查询则对余下的记录进行降序排列
while not rs.eof
response.write rs("id")
rs.movenext
wend
rs.close
conn.close
%>
*********************
感谢阅读,希望本文对你有帮助

 
分享到:
评论

相关推荐

    SQL分页语句

    SQL分页语句 有关分页 SQL 的资料很多,有的使用存储过程,有的使用游标。本人不喜欢使用游标,我觉得它耗资、效率低;使用存储过程是个不错的选择,因为存储过程是经过预编译的,执行效率高,也更灵活。先看看单条 ...

    分页 jar包,jdbc ,hibernate(sql语句分页)

    基于sql语句的分页,效率更高,此jar包包含常用分页格式 使用方法在jboss5的博客中

    Oracle,SQl,MySql实现分页查询

    分页方案一:(利用Not In和SELECT TOP分页) 效率次之,需要拼接SQL语句 分页方案三:(利用SQL的游标存储过程分页) 效率最差,但是最为通用 SELECT u.username FROM `user` u join contact_info c on (u.id=c.user_...

    分享三种高效率SQL语句分页方法

    分享三种高效率SQL语句分页方法,需要的朋友可以参考下。

    linq分页方法步骤在注释里_生成数据库分页及sql语句

    linq分页,cs文件和word解释,需要自己建立项目并配置,是正宗的数据库分页,效率较高

    一条SQL语句搞定Sql2000 分页

    一条sql语句就实现了分页效果,但效率不是很高,建议学习,不建议使用,最好用存储过程

    asp.net使用oracle分页存储过程查询数据

    该方法中,将参数连接字符串,查询的sql语句,指定每页显示多少行,调用成功后,会返回页数,行数,还有查询的结果数据集。 使用说明 1、请先在Oracle数据中新建存储过程 2、修改代码中的相关参数。比如,连接...

    oracle 高效分页

    oracle 高效分页,使用SQL语句控制所查询出的行号

    Oracle实现分页查询的SQL语法汇总

    本文实例汇总了Oracle实现分页查询的SQL语法,整理给大家供大家参考之用,详情如下: 1.无ORDER BY排序的写法。(效率最高) 经过测试,此方法成本最低,只嵌套一层,速度最快!即使查询的数据量再大,也几乎不受影响...

    存储过程的分页方案比拼

    (转网络的)通过SQL 查询分析器,显示比较:我的结论是: ...分页方案一:(利用Not In和SELECT TOP分页) 效率次之,需要拼接SQL语句 分页方案三:(利用SQL的游标存储过程分页) 效率最差,但是最为通用

    数据库分页查询语句数据库查询

    关于分页 SQL 的资料许多,有的使用存储过程,有的使用游标。本人不喜欢使用游标,我觉得它耗资、效率低;使用存储过程是个不错的选择,因为存储过程是颠末预编译的,执行效率高,也更灵活

    mysql分页原理和高效率的mysql分页查询语句

    以前我在mysql中分页都是用的 limit 100000,20这样的方式,我相信你也是吧,但是要提高效率,让分页的代码效率更高一些,更快一些,那我们又该怎么做呢? 第一部分:看一下分页的基本原理: 代码如下:mysql explain ...

    SQL培训第一期

    存储过程是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中。用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。 1.9.2 准备 create table t_user ( username varchar2(20), ...

    asp.net知识库

    也论该不该在项目中使用存储过程代替SQL语句 如何使数据库中的表更有弹性,更易于扩展 存储过程——天使还是魔鬼 如何获取MSSQLServer,Oracel,Access中的数据字典信息 C#中利用GetOleDbSchemaTable获取数据库内表信息...

    ImportSQL V1.4

    目前测试的最大数据量为67w条,智能分页查询,效率更高。 4. 支持自定义查询,并生成支持的文档格式 &lt;br&gt;5. 支持文本文件、CSV、SQL、XML &lt;br&gt;6. 可导出所有的视图或存储过程、用户函数、触发器、表、...

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part1

    实例128 获取数组中最后一个元素 158 实例129 去除数组中的重复元素 158 实例130 字符串与数组的转换 159 实例131 对数组元素进行随机排序 160 实例132 随机抽取数组中元素 161 实例133 二维数组的输出 162 实例134 ...

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part2

    实例128 获取数组中最后一个元素 158 实例129 去除数组中的重复元素 158 实例130 字符串与数组的转换 159 实例131 对数组元素进行随机排序 160 实例132 随机抽取数组中元素 161 实例133 二维数组的输出 162 实例134 ...

    Mysql 取字段值逗号第一个数据的查询语句

    从一个MySQL的例子来学习查询语句mysql分页原理和高效率的mysql分页查询语句mysql查询语句通过limit来限制查询的行数mysql优化limit查询语句的5个方法优化MySQL数据库中的查询语句详解整理MySql常用查询语句(23种)...

    rock-0.9开源框架

    5 对于复杂查询任务,sql语句也可以直接放在spring的配置文件中,直接注入到DAO中。 6 不支持对象之间的关联。 7 不支持缓存(觉得没必要) 8 利用数据库本身功能支持数据分页 9 使用数据库方言支持不同的数据库 10 ...

    andbase开发框架介绍

    1.andbase中包含了大量的开发常用手段。 如网络下载,多线程与线程池的管理,数据库ORM,图片缓存管理,图片文件下载上传,Http请求工具,SOAP工具类,异步Task,常用工具类(字符串,日期,文件处理,图片处理工具...

Global site tag (gtag.js) - Google Analytics