Mysql 我不知道';t使用索引中最左边的前缀,为什么索引在结果中有效?
这就是sqlMysql 我不知道';t使用索引中最左边的前缀,为什么索引在结果中有效?,mysql,indexing,Mysql,Indexing,这就是sql 使用test_01; 如果存在订单,则删除表格; 创建表格订单( id int自动递增主键, 姓名char(20), 价格小数(10,2)默认为0 ); 这就是解释结果 身份证件 选择类型 桌子 分割 类型 可能的\u键 钥匙 基伦 裁判 排 过滤 额外的 1. 简单的 命令 无效的 裁判 名称\价格\密钥 名称\价格\密钥 87 康斯特,康斯特 1. 100 在何处使用;使用索引 “使用索引”就是线索。这意味着SELECT中的所有列都可以在索引中找到 最左边的列位于中,其中:
使用test_01;
如果存在订单,则删除表格;
创建表格订单(
id int自动递增主键,
姓名char(20),
价格小数(10,2)默认为0
);
这就是解释结果
身份证件
选择类型
桌子
分割
类型
可能的\u键
钥匙
基伦
裁判
排
过滤
额外的
1.
简单的
命令
无效的
裁判
名称\价格\密钥
名称\价格\密钥
87
康斯特,康斯特
1.
100
在何处使用;使用索引
“使用索引”就是线索。这意味着SELECT
中的所有列都可以在索引中找到
最左边的列位于中,其中
:
and name = 'alisi1900001'
所以,我不明白你在问什么
中的测试顺序,其中
无关紧要;索引中列的顺序确实很重要。WHERE
同时过滤name
和price
,因此可以使用整个索引。另请注意“const,const”其中price=45.80,name='alisi1900001'。。其中的列与索引名\价格\键中的列相同
and name = 'alisi1900001'