Sql的分页方式

来源:互联网 发布:淘宝装修神器书本 编辑:程序博客网 时间:2024/05/22 01:39
在SQLSERVER和ORACLE中,可以利用一些特殊的关键字和算法(SQL)来实现分页功能。 

  1)在SQLSERVER中,可以利用TOP关键字来实现分页功能,例如以下SQL就能实现分页算法: 
select top [pagesize] * 
from table 
where id not in 
( select top [pagesize*(currentpage-1)] id from table [查询条件] order by id ) 
    and [查询条件] 

order by id 


测试语句:

select top 30 * 
from [LogisticsDB].[dbo].[T_WayBill] 
where id not in 
( select top (30 * 56) id from [LogisticsDB].[dbo].[T_WayBill] order by id ) order by id 


测试说明:有效

======================================================================================
  2)在ORACLE中可以利用ROWNUM关键字来实现分页算法,例如以下分页算法: 
SELECT * 
FROM ( SELECT row_.*, rownum rownum_ 
      FROM (...... ) row_ 
      WHERE rownum <= ?) 
WHERE rownum_ > ? 

  3)在MYSQL中利用LIMIT关键字来实现分页算法,例如以下分页算法: 
select * 
from table [查询条件] 
order by id limit ?,? 
0 0
原创粉丝点击