EXPLAIN EXTENDED SELECT `member`.`id` , `member`.`name`
FROM `member`
WHERE `member`.`last_active` > '1289348406'
尽管last_active
有一个索引,但显示以下输出....不应该说index
而不是where
吗?
id select_type table type possible_keys key key_len ref rows filtered Extra
1 SIMPLE member range last_active last_active 4 NULL 2 100.00 Using where
答案 0 :(得分:1)
Using index
表示查询根本不触及表格:
Using index
仅使用索引树中的信息从表中检索列信息,而无需执行额外的搜索来读取实际行。当查询仅使用属于单个索引的列时,可以使用此策略。
由于索引并未涵盖所有字段,因此无法实现。
当然正在使用索引本身(因为访问类型为range
),但它仍然需要在表中执行行查找以检索name
和{{1的值}}
如果您想查看id
,请在(last_active, name, id)
上创建覆盖索引。