我需要知道索引中最重要的列
“我的表”包含以下字段
id (int Primary key)
first_name(varchar(50))
last_name varchar(50)我的指数是
Create index ix_name_1 on name(last_name,first_name)查询
当我运行以下查询时,它需要适当的索引
Select *
from name
where first_name = 'firstName' and last_name ='lastName'或
select *
from name
where last_name = 'lastName' and first_name = 'firstName'但是当我跑的时候
Select * from name where first_name = 'firstName'到桌子上扫描。
关于这一点,我发现last_name是最左边的列,对于不同的表和不同的查询,我尝试了相同的方法,在where子句中忽略了left列。
所以我需要知道索引中最重要的专栏内容
发布于 2016-10-18 11:44:42
是的,索引中最左边的列都很重要,请参阅这
http://dev.mysql.com/doc/refman/5.7/en/multiple-column-indexes.html 据说:
名称索引是last_name和first_name列上的索引。该索引可用于在指定last_name和first_name值组合的已知范围内的值的查询中进行查找。它还可以用于只指定last_name值的查询,因为该列是索引的最左前缀(如本节后面所述)。因此,名称索引用于以下查询中的查找:.
https://stackoverflow.com/questions/40107217
复制相似问题