某数据库表包含2000万条记录,字段A的取值范围仅有10种可能且分布均匀。若需频繁执行'WHERE A = ?'查询并返回约200万条记录,此时创建索引的策略应为:
答案解析
核心考点:索引类型选择与选择性分析
解题思路分析:
1. 索引选择性=不同值数量/总记录数,本题选择性=10/20M=极低值
2. B树索引在低选择性场景效率差(需扫描大量叶子节点)
3. 哈希索引适合等值查询但无法支持范围查询,且本例返回结果集过大
4. 全表扫描可通过顺序I/O高效处理大数据量查询
选项分析:
A:错误,低选择性导致B树索引效率反而低于全表扫描
B:哈希索引虽快但结果集过大时性能可能下降
C:正确,当查询返回超过表总行数5%-10%时全表扫描更优
D:覆盖索引在此场景无法改善底层数据访问量
易错点提醒:容易忽视索引选择性与结果集大小的关联关系
正确答案:C