SET optimizer_trace="enabled=on"; // 打开 optimizer_trace
SELECT * FROM order_info where uid = 5837661 order by id asc limit 1
SELECT * FROM information_schema.OPTIMIZER_TRACE; // 查看执行计划表
SET optimizer_trace="enabled=off"; // 关闭 optimizer_trace
select * from order_info force index(idx_uid_stat) where uid = 5837661 order by id asc limit 1
select * from order_info where uid = 5837661 order by (id+0) asc limit 1
在type这一列,有如下一些可能的选项:
这个文章写的有问题,key是primary是主键索引,不是全表扫描
MySQL bug, 执行计划, 索引优化, 优化器, 全表扫描
MySQL常见bug及解决方案,涉及SQL执行计划优化,包括强制使用索引和骗过优化器的方法,帮助避免99%人会踩的坑。