只要name, tags
您的查询过滤器names
和tags
. 如果您的查询应该省略tags
,则索引将无用(示例 1 下的最后一条语句)。tags
另外,我希望您在该领域没有多个“标签” 。
示例 1 - 综合指数
索引:INDEX (name, tags)
索引将用于SELECT ... WHERE name = '...' AND tags = '...'
或 SELECT ... WHERE tags = '...' AND name = '...'
| 身份证 | 选择类型 | 表 | 类型 | 可能键 | 关键 | KEY_LEN | 参考 | 行 | 额外 |
-------------------------------------------------- -------------------------------------------------- ----
| 1 | 简单 | 用户 | 参考 | 索引 | 索引 | 第1536章 常量,常量 | 1 | 使用位置 |
索引将用于SELECT ... WHERE name = '...'
| 身份证 | 选择类型 | 表 | 类型 | 可能键 | 关键 | KEY_LEN | 参考 | 行 | 额外 |
-------------------------------------------------- ------------------------------------------------
| 1 | 简单 | 用户 | 参考 | 索引 | 索引 | 第768章 常量 | 1 | 使用位置 |
没有使用索引SELECT ... WHERE tags = '...'
| 身份证 | 选择类型 | 表 | 类型 | 可能键 | 关键 | KEY_LEN | 参考 | 行 | 额外 |
-------------------------------------------------- --------------------------------------------------
| 1 | 简单 | 用户 | 全部 | (空) | (空) | (空) | (空) | 1 | 使用位置 |
示例 2 - 两个单一索引
索引:INDEX1 (name)
,INDEX2 (tags)
两个索引都用于SELECT ... WHERE name = '...' AND tags = '...'
| 身份证 | 选择类型 | 表 | 类型 | 可能键 | 关键 | KEY_LEN | 参考 | 行 | 额外 |
-------------------------------------------------- -------------------------------------------------
| 1 | 简单 | 用户 | 参考 | 索引1,索引2 | 索引1 | 第768章 常量 | 1 | 使用位置 |
INDEX1
用于SELECT ... WHERE tags = '...'
| 身份证 | 选择类型 | 表 | 类型 | 可能键 | 关键 | KEY_LEN | 参考 | 行 | 额外 |
-------------------------------------------------- -------------------------------------------------
| 1 | 简单 | 用户 | 参考 | 索引1 | 索引1 | 第768章 常量 | 1 | 使用位置 |
INDEX2
用于SELECT ... WHERE name = '...'
| 身份证 | 选择类型 | 表 | 类型 | 可能键 | 关键 | KEY_LEN | 参考 | 行 | 额外 |
-------------------------------------------------- -------------------------------------------------
| 1 | 简单 | 用户 | 参考 | 索引2 | 索引2 | 第768章 常量 | 1 | 使用位置 |