sql表分页

原创 2005年05月21日 13:16:00

一条语句搞定数据库分页

select top 10 b.* from (select top 20 主键字段,排序字段 from 表名 order by 排序字段 desc) a,表名 b where b.主键字段 = a.主键字段 order by a.排序字段

10 = 每页记录数

20 = (当前页 + 1) * 每页记录数

以上语句即可以实现分页,但是最后取出的结果排序是升序,如果需要结果集为降序(例如时间),则有两种方法可以处理

1.使用以下语句,但效率可能要降低一些

select * from 表名 b, (select top 10 主键字段,排序字段 from (select top 20 主键字段,排序字段 from 表名 order by 排序字段 desc) a order by 排序字段 ) c where b.主键字段 = c.主键字段 order by c.排序字段 desc

2.在ado里处理,将记录集游标移到最后,然后前移

''以下为asp范例

set rsTemp = Server.CreateObject("adodb.recordset")

rsTemp.Open 语句,conn,1,1

rsTemp.MoveLast

for i = 1 to rsTemp.RecordCount

 '取值....

rsTemp.MovePrevious

next

 

经测试,以上分页方法比使用临时表分页速度还要快,并且简单易用

单数据集分页SQL实现层式报表

  • 2015年08月13日 15:49
  • 362KB
  • 下载

Linq To SQL通用分页存储过程二个,支持多表联合.

/// /// 数据库查询会话基类 /// public class DataContextBase : DataContext, IPagingDataContext ...

ms sql 2005 2008 通用表分页存储过程

USE [LevcnBase] GO /****** Object: StoredProcedure [dbo].[Paging] Script Date: 11/09/2011 18:10:...

多表关联的分页SQL经典案例

explain plan for select * from (select a.cert_type, a.cert_no, a....

[MSSQL]SQL通用存储过程分页,支持多表联合

注意:该存储过程处理逻辑被发现有严重错误,并不能实现 任意排序等功能。 /**//* 说明:1.支持多表查询 2.支持任意排序 3.不支持表别名 参考了     evafly920:[...

分页SQL走全表扫描导致TEMP耗尽

.查看SQL信息: select * from (select a.cert_type, a.cert_no,...

Caused by: java.sql.SQLSyntaxErrorException: ORA-00942: 表或视图不存在,分页等关于hibernate测试的几个问题

今天的hibernate出现一个错误 1.异常。Caused by: java.sql.SQLSyntaxErrorException: ORA-00942: 表或视图不存在异常很明显。马上想到的是...

又一个通用分页存储过程,支持表别名,多表联合查询SQL语句--转载

好久没有上来写点东西了,今天正好有空,共享一些个人心得,就是关于分页的存储过程,这个问题应该是老生重谈了,网上的通用存储过程的类型已经够多了,但是,好象看到的基本上不能够满足一些复杂的SQL语句的分页...
  • ty_soft
  • ty_soft
  • 2012年02月21日 14:50
  • 418

多表联合查询sql存储过程带分页

多表联合查询sql存储过程带分页
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:sql表分页
举报原因:
原因补充:

(最多只允许输入30个字)