首页 > 课堂 > 基础知识 > 正文

重返行数比例高不走索引

2024-09-12 20:30:08
字体:
来源:转载
供稿:网友
  在MySQL中,查询返回的行数比例超过总行数20%,执行计划将不走索引,下边看一个例子,查询id大于1的信息。
  点击(此处)折叠或打开
 
  mysql> explain select * from test06 where id>1;
  +----+-------------+--------+------+---------------+------+---------+------+---------+-------------+
  | id | select_type | table  | type | possible_keys | key  | key_len | ref  | rows    | Extra       |
  +----+-------------+--------+------+---------------+------+---------+------+---------+-------------+
  | 1  | SIMPLE      | test06 | ALL  | idx_test03_id | NULL | NULL    | NULL | 2009559 | Using where |
  +----+-------------+--------+------+---------------+------+---------+------+---------+-------------+
    当返回行数比例较高时候,优化器认为全表扫描更省时间,不会使用索引。

(编辑:武林网)

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表