通过一个实例给大家分享了MySQL Sending data表查询慢问题解决办法。
最近在代码优化中,发现了一条sql语句非常的慢,于是就用各种方法进行排查,最后终于找到了原因。
一、事故现场 SELECT og.goods_barcode, og.color_id, og.size_id, SUM(og.goods_number) AS sold_number FROM order o
LEFT JOIN order_goods og ON o.order_id = og.order_id WHERE o.is_send = 0 AND o.shipping_status = 0
AND o.create_time > '2017-10-10 00:00:00' AND o.ck_id = 1 AND og.goods_id = 13421 AND o.is_separate = 1 AND o.order_status IN (0, 1) AND og.is_separate = 1
GROUP BY og.color_id, og.size_id
上面的这条语句是一个联表分组查询语句。
执行结果:
我们可以看到,这条语句用了 1.300 秒, 而 Sending data 就用了 1.28 秒,占用了将近 99% 的时间,所以,我们对这个进行优化。
怎么优化呢?
二、SQL语句分析三板斧