MySQL查询语句的优化方法
众所周知,分页程序分页一般采用限制。当您的应用程序数据足够小时,您可能不会对限制语句感到任何问题,但是当查询数据达到一定的水平时,限制的性能将急剧下降,这是通过大量示例得出的结论。
根据一个具体的例子,这里有10个不同位置相同表的数据:
(1)当偏移量相对较小时
复制代码代码如下:SELECT * FROM用户限制10,10;
这个SQL语句运行很多次,和时间保持在0.0004-0.0005。
复制代码如下:SELECT * FROM用户UID(UID极限、极限10选择从用户订单= UID);
这个SQL语句运行很多次,和时间保持在0.0005-0.0006,主要0.0006。
结论:当偏移偏移较小,限制直接使用更好。这显然是为子查询的原因。
(2)当偏移量较大时
复制代码代码如下:SELECT * FROM用户限制10000,10;
此SQL语句运行多次,时间保持在0.0187左右。
复制代码如下:SELECT * FROM用户UID(选择的限制10000,1 UID限制10从用户订单= UID);
这个SQL语句运行很多次,和时间仍然是0.0061左右,只有前1 /三是预期较大的偏移量,更好的后者。
通过以上比较,我们得出结论,当使用限制语句时,当数据量偏移量较小时,可以直接使用限制。当数据量偏移量较大时,我们可以适当地使用子查询进行相关性能优化。