数据库的分页语句

在编写Web应用程序等系统时,会涉及到与数据库的交互,如果数据库中数据量很大的话,一次检索所有的记录,会占用系统很大的资源,因此常常采用分页语句:需要多少数据就只从数据库中取多少条记录。以下是Sql Server,Oracle和MySQL的分页语句(从数据库表中的第M条数据开始取N条记录):

SQL Server
从数据库表中的第M条记录开始取N条记录,利用Top关键字(如果Select语句中既有top,又有order by,则是从排序好的结果集中选择):

SELECT *�� FROM 
  (SELECT Top N * FROM 
    (SELECT Top (M + N - 1) * FROM 表名称 Order by 主键 desc) 
  t1) 
t2�� Order by 主键 asc��  

例如从表Sys_option(主键为sys_id)中从10条记录还是检索20条记录,语句如下:

SELECT *�� FROM 
  (SELECT TOP 20 *�� FROM 
    (SELECT TOP 29 * FROM Sys_option order by sys_id desc) 
  t1) 
t2�� Order by sys_id asc

MySQL数据库
My sql数据库最简单,是利用mySQL的LIMIT函数,LIMIT [offset,] rows从数据库表中M条记录开始检索N条记录的语句为:

SELECT [列名列表] FROM 表名称 LIMIT M,N�  

例如从表Sys_option(主键为sys_id)中从10条记录还是检索20条记录,语句如下:

select * from sys_option limit 10,20 

Oralce数据库
从数据库表中第M条记录开始检索N条记录



例如从表employees(主键为employee_id)中从11条记录还是检索20条记录,语句如下:


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一.数据控制语句(DML)部分 1.INSERT(往数据表里插入记录的语句) INSERTINTO表名(字段名1,...
    浮浮尘尘阅读 8,960评论 0 19
  • 需要原文的可以留下邮箱我给你发,这里的文章少了很多图,懒得网上粘啦 1数据库基础 1.1数据库定义 1)数据库(D...
    极简纯粹_阅读 12,235评论 0 46
  • 今天开始记录事务,一天下来发现孩子也挺忙的。恐龙币打印出来了,因为配合刷牙奖励1元。但是感觉孩子对于钱币的概念不是...
    马行千里玥溢彩阅读 1,059评论 0 0
  • 拆掉思维里的墙 我们一直在按照自己过去仅有的经验和记忆,在大脑里试图构建一个属于自己的世界观模型,并以此作为直...
    孤门游星Z阅读 1,137评论 0 0
  • 半年前,我在朋友圈问了一下我的朋友们,他们选择现在这个专业的原因。 总结一下吧——每个人都有每个人的考虑,的确收到...
    小胡子爱吃糖阅读 1,514评论 0 0