小编bmu*_*uer的帖子

MySQL 正在使用 possible_keys 中未列出的索引

在一个非常基本的设置中,我有一个包含一些字段的表:

firstname (VARCHAR)
lastname (VARCHAR)
country (INT)
email (VARCHAR)
Run Code Online (Sandbox Code Playgroud)

我在 Index 中创建了 2 个字段:

CREATE INDEX countr_email_idx ON person (country, email)
Run Code Online (Sandbox Code Playgroud)

这是学校的一个简单例子,因此不应假设该索引是否有任何用处。

现在,当我通过电子邮件字段查询简单的 Select 时,MySQL 文档指出,因为它不是索引的最左侧属性,所以无法使用它。possible_keys当我使用以下命令运行查询时,这也反映在空值中EXPLAIN

EXPLAIN SELECT passenger_id, email
FROM passengerdetails
WHERE email LIKE 'bob%'
Run Code Online (Sandbox Code Playgroud)

这产生

id | select_type | table            | type  | possible_keys | key              | key_len | ref  | rows  | Extra
1  | SIMPLE      | passengerdetails | index | NULL          | countr_email_idx | 225     | NULL | 36370 | Using where; …
Run Code Online (Sandbox Code Playgroud)

mysql index

4
推荐指数
1
解决办法
3323
查看次数

标签 统计

index ×1

mysql ×1