MySQL的经典限制用法和优化示例的详细说明

用法
复制代码代码如下所示:
选择` keyword_rank `。* ` keyword_rank `哪里(advertiserid = '59)限2偏移1;

例如,这个SQL,2个数据后面的限制,从第一次读取开始后偏移。

使用两
复制代码代码如下所示:
选择` keyword_rank `。* ` keyword_rank `哪里(advertiserid = '59)限2,1;

这个SQL,在限制之后,从第二条读取,并读取1条消息。

这两者不可混为一谈。

使用三
复制代码代码如下所示:
SELECT * FROM tablename限100,1

从第一百个开始——最后一个。

使用四
复制代码代码如下所示:
SELECT * FROM tablename限制15

相当于超过极限。查询结果使用前15个数据使用量五

MySQL的较低版本不支持限制偏移。

限制偏移通常在MySQL的4多个版本中正常运行,在MySQL 3.23的旧版本中是无效的。

极限m偏移量等于极限m,n

优化极限

MySQL的限制给分页带来了极大的便利,但当数据量较大时,极限性能急剧下降。

来源:第三英亩的博客

MySQL的优化是非常重要的,另一个最常用和最需要的优化是限制,MySQL的限制给分页带来了极大的方便,但当数据量很大时,限制的性能急剧下降。

取10个数据也是如此。
复制代码代码如下所示:
SELECT * FROM yanxue8_visit极限10000,10

SELECT * FROM yanxue8_visit限制不同

这不是数量的命令。

也有很多在线优化限制的指南,所有这些都是从MySQL手册翻译过来的,虽然正确但不实际。

而不是直接使用限制,我们首先要抵消的ID,然后直接使用极限尺寸得到数据。根据他的数据,这显然是更直接的使用极限。这里我使用的数据在两例测试(测试环境win2033 + P4双核(3GHz的)+ 4G内存MySQL 5.0.19)

1,当偏移量较小时。
复制代码代码如下所示:
SELECT * FROM yanxue8_visit极限10,10

运行多次,保持0.0004-0.0005之间的时间
复制代码代码如下所示:
SELECT * FROM yanxue8_visit在VID > =(

选择视频的视频、yanxue8_visit顺序限制

10)限制

很多时候,时间保持在0.0005-0.0006,主要0.0006

结论:当偏移偏移较小,限制直接使用更好。这显然是为子查询的原因。

2,当偏移量很大时。
复制代码代码如下所示:
SELECT * FROM yanxue8_visit极限10000,10

运行多次,并保持在0.0187左右的时间
复制代码代码如下所示:
SELECT * FROM yanxue8_visit在VID > =(

选择视频的VID限制10000,1 yanxue8_visit秩序

10)限制

很多时候,时间保持在0.0061左右,只有前者的1/三是预期较大的偏移量,更好的后者。

在将来,我们应该注意纠正您的限制语句并优化MySQL。