博观而约取,厚积而薄发。

再长的路,一步步也能走完;再短的路,不迈开双脚也无法到达。
posts - 1, comments - 6, trackbacks - 0, articles - 1
  PHP博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

mysql中limit的用法详解[数据分页常用]

Posted on 2008-04-15 14:07 Peter Jin 阅读(336683) 评论(6)  编辑 收藏 引用 网摘 所属分类: 技术点滴
在我们使用查询语句的时候,经常要返回前几条或者中间某几行数据,这个时候怎么办呢?不用担心,mysql已经为我们提供了这样一个功能。
SELECT * FROM table  LIMIT [offset,] rows | rows OFFSET offset


LIMIT 子句可以被用于强制 SELECT 语句返回指定的记录数。LIMIT 接受一个或两个数字参数。参数必须是一个整数常量。如果给定两个参数,第一个参数指定第一个返回记录行的偏移量,第二个参数指定返回记录行的最大数目。初始记录行的偏移量是 0(而不是 1): 为了与 PostgreSQL 兼容,MySQL 也支持句法: LIMIT # OFFSET #。

mysql> SELECT * FROM table LIMIT 5,10;  // 检索记录行 6-15

//为了检索从某一个偏移量到记录集的结束所有的记录行,可以指定第二个参数为 -1: 
mysql
> SELECT * FROM table LIMIT 95,-1// 检索记录行 96-last.

//如果只给定一个参数,它表示返回最大的记录行数目: 
mysql
> SELECT * FROM table LIMIT 5;     //检索前 5 个记录行

//换句话说,LIMIT n 等价于 LIMIT 0,n。

Feedback

# re: mysql中limit的用法详解[数据分页常用]  回复  更多评论   

2008-04-16 11:28 by 小葱
mysql> SELECT * FROM table LIMIT 95,-1; // 检索记录行 96-last.


这个要记下来

# re: mysql中limit的用法详解[数据分页常用]  回复  更多评论   

2008-04-17 15:40 by hamburger
一开始用mysql,后来再用sql server, oracle发现它们都找不到这么完美的功能.

# re: mysql中limit的用法详解[数据分页常用]  回复  更多评论   

2008-04-22 17:16 by zhang,jianhui
select * from apple limit 1,-1

# re: mysql中limit的用法详解[数据分页常用]  回复  更多评论   

2008-05-04 11:19 by Happy漫步者
为什么 mysql ms sql server oracle都不 统一下函数呢
多好 啊 ~~~
sql语句还有不同 ..带来很多麻烦 要 转换sql语句....

# re: mysql中limit的用法详解[数据分页常用]  回复  更多评论   

2008-05-15 20:32 by 网上买书
用法还真多啊。

# re: mysql中limit的用法详解[数据分页常用]  回复  更多评论   

2008-05-26 15:04 by zhluo
楼主:-1那个参数我试过,没有通过呀,会报错。

只有注册用户登录后才能发表评论。
网站导航: