limit Mysql查询语句使用方法
在我看来,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.jquerycn.cn/database/mysql/50921.htm
您可能感兴趣的文章:
学习MySQL数据分页查询(limit用法)
mysql 分页查询的sql语句
select语句实现mysql分页查询
mysql中使用limit时,explain带来的问题分析
实例详解mysql limit大数据量分页优化的方法
mysql中limit、order by和group by的用法实例解析
mysql limit用法及优化详解
limit Mysql查询语句使用方法
php实现数据库链式查询的简单例子
Mysql中limit的用法实例详解