突然间想到自己还写过随笔,那就登录博客园再写一下吧,密码都忘记了,鼓捣半天才登上来。
已过而立之年,倍感焦虑
最近遇到一个问题,搞半天搞不明白。
上面两图是表结构和索引,
1 EXPLAIN select p.* from program p where p.name like '%dddd%'
order by p.createtime desc limit 0,10;
此sql执行时间为20秒左右
2 EXPLAIN select p.* from program p where p.name like '%dddd%'
order by p.publishtime desc limit 0,10;
此sql执行时间为2秒左右
其中program表的数据量为350442
其中 sql语句1 如果不加 limit 则执行很快,而且执行计划为全表扫描,下图为执行计划
不太理解的是为什么不加limit 全表扫描,加上limit会使用索引呢?