- 0
- 0
- 约小于1千字
- 约 2页
- 2026-04-24 发布于山西
- 举报
此时索引使用情况和情况二相同,因为title未,所以查询只用到了索引的第一列,而后面的
from_date虽然也在索引中,但是由于title不存在而无法和左前缀连接,因此需要对结果进行扫描过滤
from_date(这里由于emp_no唯一,所以不存在扫描)。如果想让from_date也使用索引而不是where
过滤,可以增加一个辅助索引emp_no,from_date,此时上面的查询会使用这个索引。除此之外,还
可以使用一种称之为“列”的优化方法,将emp_no与from_date之间的“坑”填上。
首先我们看下title一共有几种不同的值:
只有7种。在这种成为“坑”的列值比较少的情况下,可以考虑用“IN”来填补这个“坑”从而形成最左前缀:
ANDfrom_date=1986-06-26;
这次key_len为159,说明索引被用全了,但是从type和rows看出IN实际
原创力文档

文档评论(0)