最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
limit Mysql查询语句使用方法
时间:2016-07-02 编辑:简简单单 来源:一聚教程网
在我看来,limit应该是我们在mysql中最经常使用到的方法了吧,下面我们就来讲解一下limit的作用和如何正确地使用该方法。
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。
如何优化limit
当一个查询语句偏移量offset很大的时候,如select * from table limit 10000,10 , 最好不要直接使用limit,而是先获取到offset的id后,再直接使用limit size来获取数据。效果会好很多。
如:
select * From customers Where customer_id >=(
select customer_id From customers Order By customer_id limit 10000,1
) limit 10;
有兴趣可以看查limit分页优化教程:http://www.111com.net/database/mysql/50921.htm
相关文章
- 找出mysql中like模糊查询效率低的sql语句 11-10
- Mysql中SQL分组查询group by的例子 08-04
- mysql不支持在子查询中使用limit解决办法 03-18
- 查询mysql哪些表正在被锁状态 09-24
- mysql 关联查询中GROUP BY的例子 03-23
- MYSQL 再谈JOIN 关联查询用法 03-23