php mssql 数据库分页SQL语句


Posted in PHP onDecember 16, 2008

我们在编写MIS系统和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
实例:
select * from ( select TOP pagesize * FROM ( SELECT TOP pagesize*cureentpage * from user_table ORDER BY id ASC ) as aSysTable ORDER BY id DESC ) as bSysTable ORDER BY id 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

Oralce数据库

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

SELECT *

FROM (SELECT ROWNUM r,t1.* From 表名称 t1 where rownum < M + N) t2

where t2.r >= M

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

SELECT *

FROM (SELECT ROWNUM R,t1.* From Sys_option where rownum < 30 ) t2

Where t2.R >= 10

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

PHP 相关文章推荐
用PHP4访问Oracle815
Oct 09 PHP
php.ini中的php-5.2.0配置指令详解
Mar 27 PHP
php判断字符以及字符串的包含方法属性
Aug 30 PHP
探讨:如何通过stats命令分析Memcached的内部状态
Jun 14 PHP
php的ajax简单实例
Feb 27 PHP
PHP解析html类库simple_html_dom的转码bug
May 22 PHP
php定界符
Jun 19 PHP
php生成唯一的订单函数分享
Feb 02 PHP
php数组索引与键值操作技巧实例分析
Jun 24 PHP
php常量详细解析
Oct 27 PHP
PHP内置函数生成随机数实例
Jan 18 PHP
PHP设计模式之 策略模式Strategy详解【对象行为型】
May 01 PHP
linux下 C语言对 php 扩展
Dec 14 #PHP
php 文件状态缓存带来的问题
Dec 14 #PHP
快速开发一个PHP扩展图文教程
Dec 12 #PHP
PHP Google的translate API代码
Dec 10 #PHP
php escape URL编码
Dec 10 #PHP
php 破解防盗链图片函数
Dec 09 #PHP
中英文字符串翻转函数
Dec 09 #PHP
You might like
用PHP实现小型站点广告管理(修正版)
2006/10/09 PHP
来自PHP.NET的入门教程
2006/10/09 PHP
解析php DOMElement 操作xml 文档的实现代码
2013/05/10 PHP
jQuery一步一步实现跨浏览器的可编辑表格,支持IE、Firefox、Safari、Chrome、Opera
2009/08/28 Javascript
基于JQuery.timer插件实现一个计时器
2010/04/25 Javascript
jQuery 验证插件 Web前端设计模式(asp.net)
2010/10/17 Javascript
神奇的7个jQuery 3D插件整理
2011/01/06 Javascript
整理一些JavaScript的IE和火狐的兼容性注意事项
2011/03/17 Javascript
Javascript中document.referrer隐藏来源的方法
2017/01/16 Javascript
用jQuery实现可输入多选下拉组合框实例代码
2017/01/18 Javascript
超全面的JavaScript开发规范(推荐)
2017/01/21 Javascript
浅谈Javascript事件对象
2017/02/05 Javascript
JavaScript 高性能数组去重的方法
2018/09/20 Javascript
小程序中canvas的drawImage方法参数使用详解
2019/07/04 Javascript
浅谈vue异步数据影响页面渲染
2019/10/29 Javascript
JavaScript 实现HTML DOM增删改查操作的常见方法详解
2020/01/04 Javascript
Vue使用Three.js加载glTF模型的方法详解
2020/06/14 Javascript
js实现星星打分效果
2020/07/05 Javascript
python选择排序算法的实现代码
2013/11/21 Python
Python实现线程池代码分享
2015/06/21 Python
Python实现的朴素贝叶斯算法经典示例【测试可用】
2018/06/13 Python
python实现三维拟合的方法
2018/12/29 Python
python实现五子棋小程序
2019/06/18 Python
django框架使用orm实现批量更新数据的方法
2019/06/21 Python
pandas的连接函数concat()函数的具体使用方法
2019/07/09 Python
python同义词替换的实现(jieba分词)
2020/01/21 Python
带你学习Python如何实现回归树模型
2020/07/16 Python
html5 外链式实现加减乘除的代码
2019/09/04 HTML / CSS
Myprotein芬兰官网:欧洲第一运动营养品牌
2019/05/05 全球购物
如何查找和删除数据库中的重复数据
2014/11/05 面试题
亲子拓展活动方案
2014/02/20 职场文书
国培计划培训感言
2014/03/11 职场文书
2014年3.15团委活动总结
2014/03/16 职场文书
医院领导班子四风对照检查材料
2014/09/27 职场文书
地下停车场租赁协议范本
2014/10/07 职场文书
Mysql数据库group by原理详解
2022/07/07 MySQL