在这篇文章中,我们将为您详细介绍Mysql学习MySQLlimit查询优化的实例详解的内容。此外,我们还会涉及一些关于mysqllimit查询优化分析、mysqllimit查询优化分析_php技巧、m
在这篇文章中,我们将为您详细介绍Mysql学习MySQL limit查询优化的实例详解的内容。此外,我们还会涉及一些关于mysql limit查询优化分析、mysql limit查询优化分析_php技巧、mysql limit查询优化分析_PHP教程、mysql limit查询优化方法(offset偏移量)_MySQL的知识,以帮助您更全面地了解这个主题。
本文目录一览:- Mysql学习MySQL limit查询优化的实例详解
- mysql limit查询优化分析
- mysql limit查询优化分析_php技巧
- mysql limit查询优化分析_PHP教程
- mysql limit查询优化方法(offset偏移量)_MySQL
Mysql学习MySQL limit查询优化的实例详解
《MysqL学习MysqL limit查询优化的实例详解》要点:
本文介绍了MysqL学习MysqL limit查询优化的实例详解,希望对您有用。如果有疑问,可以联系我们。
MysqL实例本节内容:
MysqL limit查询优化
MysqL实例MysqL的limit给分页带来了极大的便利,limit的性能就急剧下降.
MysqL实例同样是取10条数据:
select * from yanxue8_visit limit 0,10
MysqL实例就不是一个数量级其余.
MysqL实例网上也很多关于limit的五条优化准则,都是翻译自MysqL手册,虽然正确但不实用.
MysqL实例这里分享一些关于limit优化的内容,很不错.
MysqL实例这里不是直接使用limit,而是首先获取到offset的id然后直接使用limit size来获取数据.
根据他的数据,明显要好于直接使用limit.
MysqL实例具体使用数据分两种情况进行测试.(测试环境win2033+p4双核 (3GHZ) +4G内存MysqLlimit查询)
MysqL实例1、offset比拟小时
MysqL实例多次运行,时间坚持在0.0004-0.0005之间:
Select vid From yanxue8_visit Order By vid limit 10,1
) limit 10
MysqL实例多次运行,时间坚持在0.0005-0.0006之间,主要是0.0006
MysqL实例结论:偏移offset较小的时候,直接使用limit较优.这个显然是子查询的原因.
MysqL实例2、offset年夜时
Select vid From yanxue8_visit Order By vid limit 10000,1
) limit 10
MysqL实例多次运行,时间坚持在0.0061左右,只有前者的1/3.可以预计offset越大,后者越优.
MysqL实例就介绍这些了,年夜家可以自行测试下,在MysqL中limit的优化很重要,特别是MysqL年夜数量分页时更为重要.
《MysqL学习MysqL limit查询优化的实例详解》是否对您有启发,欢迎查看更多与《MysqL学习MysqL limit查询优化的实例详解》相关教程,学精学透。小编PHP学院为您提供精彩教程。
总结
以上是小编为你收集整理的Mysql学习MySQL limit查询优化的实例详解全部内容。
如果觉得小编网站内容还不错,欢迎将小编网站推荐给好友。
mysql limit查询优化分析
Limit语法:
SELECT * FROM table LIMIT [offset,] rows | rows OFFSET offset
LIMIT子句可以被用于强制 SELECT 语句返回指定的记录数。LIMIT接受一个或两个数字参数。参数必须是一个整数常量。
如果给定两个参数,第一个参数指定第一个返回记录行的偏移量,第二个参数指定返回记录行的最大数目。初始记录行的偏移量是 0(而不是 1)。
为了与 PostgreSQL 兼容,MySQL 也支持句法:LIMIT # OFFSET #。
eg:
//为了检索从某一个偏移量到记录集的结束所有的记录行,可以指定第二个参数为-1
mysql> SELECT * FROM table LIMIT 95,-1; //检索记录行96-last
//如果只给定一个参数,它表示返回最大的记录行数目,换句话说,LIMIT n 等价于 LIMIT 0,n
mysql> SELECT * FROM table LIMIT 5; //检索前5个记录行
MySQL的limit给分页带来了极大的方便,但数据量一大的时候,limit的性能就急剧下降。
同样是取10条数据,下面两句就不是一个数量级别的。
select * from table limit 10000,10
select * from table limit 0,10
文中不是直接使用limit,而是首先获取到offset的id然后直接使用limit size来获取数据。根据他的数据,明显要好于直接使用limit。
这里我具体使用数据分两种情况进行测试。
1、offset比较小的时候:
select * from table limit 10,10
//多次运行,时间保持在0.0004-0.0005之间
Select * From table Where vid >=(Select vid From table Order By vid limit 10,1) limit 10
//多次运行,时间保持在0.0005-0.0006之间,主要是0.0006
结论:偏移offset较小的时候,直接使用limit较优。这个显然是子查询的原因。
2、offset大的时候:
select * from table limit 10000,10
//多次运行,时间保持在0.0187左右
Select * From table Where vid >=(Select vid From table Order By vid limit 10000,1) limit 10
//多次运行,时间保持在0.0061左右,只有前者的1/3。可以预计offset越大,后者越优。
mysql limit查询优化分析_php技巧
Limit语法:
SELECT * FROM table LIMIT [offset,] rows | rows OFFSET offset
LIMIT子句可以被用于强制 SELECT 语句返回指定的记录数。LIMIT接受一个或两个数字参数。参数必须是一个整数常量。
如果给定两个参数,第一个参数指定第一个返回记录行的偏移量,第二个参数指定返回记录行的最大数目。初始记录行的偏移量是 0(而不是 1)。
为了与 PostgreSQL 兼容,MySQL 也支持句法:LIMIT # OFFSET #。
eg:
//为了检索从某一个偏移量到记录集的结束所有的记录行,可以指定第二个参数为-1
mysql> SELECT * FROM table LIMIT 95,-1; //检索记录行96-last
//如果只给定一个参数,它表示返回最大的记录行数目,换句话说,LIMIT n 等价于 LIMIT 0,n
mysql> SELECT * FROM table LIMIT 5; //检索前5个记录行