1

我有以下 MySQL 查询

explain select item_id from items use index(user_item_id) where user_id=9 and item_id=10000

以下是返回

id  select_type table   type    possible_keys   key             key_len   ref           rows    Extra
1   SIMPLE      items   ref     user_item_id    user_item_id    8         const,const   1       Using index

为什么类型是 ref 而不是 const?

user_item_id 是 user_id 和 item_id 的复合索引。

4

1 回答 1

2

高性能 MySql 将 ref 类型查找描述为“这是一个返回匹配单个值的行的索引访问”

添加单词时,const它被描述为“优化查询的部分并将其变成常量”

所以似乎MySQL首先需要能够从索引中找到行

ref 列中的 const 意味着 mysql 可以使用以前的值来查找索引中的内容。

于 2012-08-28T02:18:47.790 回答