mysql order by 查询慢_mysql orderby查询慢,索引也不行或不生效优化解决办法40万条数据...

mysql order by查询慢,索引也不行或不生效优化解决办法40万条数据测试如下

4d5d4aadc04e096c9c4aecbfc72b8e37.png

测试用了40万+条数据,MySQL数据表字段为48个,数据量还是蛮庞大的,面对这样的数据,如果没有做MySQL索引,简直可以直接关机了,因为根本无法访问。

但是,等好不容易做了索引,却发现MySQL执行仍然很慢,额,打个比喻,跟蜗牛差不多吧,总之让人蛋疼。

我用了一个晚上来研究,用了N多种办法,最后找到了可取的一种,那就是优化索引顺序,指定索引。

好吧,废话不多说了,直接上图、上代码、见证奇迹……

SELECT bookid,bookname,bookinfo,author,click,vip,bao,jian,piao,shang,ping,zan,cai,cang,size,isfull,sort,sortname,type,typename,sexid,tag,qudao,pic,newtime FROM ysslms_slms_book_list WHERE sort=9 AND type=1 AND vip=0 AND newtime >= UNIX_TIMESTAMP('2020-02-03 05:43:46') AND isfull=2 AND size <= 300000 order by size desc LIMIT 0,30000

//优化前使用的MySQL语句

效果如下:让人蛋疼,3万条数据,居然要用11秒,真让人受不了,当然,让人受不了的还在下面,继续看……》

dcdbe8b24755f1a9164f8d82b1416ead.png

c5ddc95385f63b88b8c6181298ce50a9.png

81bc86c12dca906bf614c16cab34554c.png

有没有被这惊人的速度吓坏呢?我自己都被下了一条,哎,好吧,说正题,开始见证奇迹,继续优化……

SELECT bookid,bookname,bookinfo,author,click,vip,bao,jian,piao,shang,ping,zan,cai,cang,size,isfull,sort,sortname,type,typename,sexid,tag,qudao,pic,newtime FROM ysslms_slms_book_list FORCE INDEX(size) WHERE sort=9 AND type=1 AND vip=0 AND newtime >= UNIX_TIMESTAMP('2020-02-03 05:43:46') AND isfull=2 AND size <= 300000 order by size desc LIMIT 0,30

//优化后的代码,没什么特别的,就是加了 FORCE INDEX(size)

5f799b703257e6587c6c3a8aa6546125.png

5d4221f57a9d10791c7598a001daac92.png

e0fab64086adde1f5b6a60120558815e.png

嘿嘿!是不是很羡慕?别急,慢慢来,这就带客官去找“《葵花宝典》”,哈哈,偏题了,精彩继续……

首先,我们需要自定义一个索引,按顺序来,就像我这样-》,不废话,上图就完了

cf87c219aec203de673996f468835b48.png

dfd270d91b17687ba420fea8fc8744b5.png

9bc8a55be7a0529ad04b77ef2c2a76ab.png

是不是有所领悟?嗯,没错,就是这样,顺序按照我们要查询的MySQL顺序来,从左到右。

当然,我也试过没按顺序的,结果嘛!你懂的,蜗牛它兄弟。

至此,我们的测试优化已结束,谢谢大家观看

附对比图一张

b316c804586751998c15d6092e1ce153.png

文图来自https://www.slms.cc/原创,转发请备注,谢谢配合,祝您工作愉快!

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值