实例:
delete from t;//整表删除
call idata(); //执行存储过程
select * from t where a between 10000 and 20000;
这里没有用到a索引。为什么?
优化器选择索引的依据:扫描行数、是否使用临时表、是否排序(order by有没有用上)
基数:索引上不同值的个数,基数越大,索引区分度越好(相当于唯一索引,查到当前值就不会再往下查了)
采样统计
全表扫描就是用主键
选错索引了用force index
博客通过实例展示SQL语句,提出查询未使用索引的疑问。介绍了优化器选择索引的依据,包括扫描行数、是否用临时表和排序等。还说明了基数概念,即索引上不同值个数,基数越大区分度越好。提到采样统计,指出全表扫描用主键,选错索引可用force index。
实例:
delete from t;//整表删除
call idata(); //执行存储过程
select * from t where a between 10000 and 20000;
这里没有用到a索引。为什么?
优化器选择索引的依据:扫描行数、是否使用临时表、是否排序(order by有没有用上)
基数:索引上不同值的个数,基数越大,索引区分度越好(相当于唯一索引,查到当前值就不会再往下查了)
采样统计
全表扫描就是用主键
选错索引了用force index
884
526

被折叠的 条评论
为什么被折叠?