那天下午刚好去听Mysql的讲座,然后就苦逼了,数据库后台无法响应!
分析慢日志:
运行了8分钟
改为left join
还没到一秒
SELECT
sstore_id
FROM
xxxxxxxxx_apply
WHERE STATUS = 2
AND pass_time >= 1467302400
AND pass_time <= 1469721599 ;
返回6537行数据。
SELECT COUNT(*) FROM xxxxxxxxxx_apply;
125902
SELECT COUNT(*) FROM xxxxxxxxxx_history;
14060
小结:left join 后,少了一个比较耗能的filesort。这个SQL只是截取了其中的一小段,该SQL的IN 中包含了1万多个变量。(此前有人说in中不要超过1千,现在证明是再多都没问题)