Mysql 多索引类型?

Mysql 多索引类型?,mysql,Mysql,我注意到,在PHPMyAdmin中,我可以单独索引列,也可以使用复选框选择字段,然后单击“索引”,它们以不同的方式被索引。这是否意味着,如果对于给定的表,我有该表的两列,它们将每一行定义为唯一的(而不仅仅是一个简单的单列id`)我应该将它们索引在一起以提高性能?多列索引可以被视为一个排序数组,其中包含通过连接索引列的值而创建的值 MySQL使用多个列索引的方式是,当您在WHERE子句中为索引的第一列指定已知数量时,即使您没有为其他列指定值,查询也很快 如果您有两个名为last\u name和fi

我注意到,在PHPMyAdmin中,我可以单独索引列,也可以使用复选框选择字段,然后单击“索引”,它们以不同的方式被索引。这是否意味着,如果对于给定的表,我有该表的两列,它们将每一行定义为唯一的(而不仅仅是一个简单的单列id`)我应该将它们索引在一起以提高性能?

多列索引可以被视为一个排序数组,其中包含通过连接索引列的值而创建的值

MySQL使用多个列索引的方式是,当您在WHERE子句中为索引的第一列指定已知数量时,即使您没有为其他列指定值,查询也很快

如果您有两个名为
last\u name
first\u name
的列,并且您创建了一个索引
index name(last\u name,first\u name)
,则该索引可用于为last\u name或last\u name和first\u name指定已知范围内的值的查询

资料来源:


因此,在您的特定情况下,它可能没有帮助。因为如果要查询后面的列(例如:
SELECT*FROM test WHERE first\u name='Michael'
SELECT*FROM test WHERE last\u name='wideius'或first\u name='Michael
),将不使用索引,查询速度将变慢

对不起,我不太明白
当您为第一列指定已知数量时
-什么是“已知数量”?我在这里找到了最好的解释:,但您的链接让我明白了,谢谢!有点困惑,但帮助了我!谢谢+1