如果用几个COLUMN共同建立了一个INDEX,如果查询时只指定了部分的字段,如果满足以下条件,也可以利用INDEX:
(1)建立INDEX的前n个字段必须出现在查询条件中,出现几个字段,MySQL就可以索引到第几个层次
(2)查询中不能有没有建立INDEX的COLUMN用于OR子句
使用索引的小技巧:
(1)如果有多个字段一起建立INDEX,那么重复值越高的COLUMN在建立索引的子句中应该越优先,这样可以减小INDEX数量,加快速度
(2)索引越小,速度越快。如果对很大的COLUMN建立索引,索引就会很大。索引尽量在设计表的时候保证COLUMN的类型尽量小
(3)对长的COLUMN,比如VARCHAR,也可以选择只在COLUMN的前几位数据上建立索引
(1)建立INDEX的前n个字段必须出现在查询条件中,出现几个字段,MySQL就可以索引到第几个层次
(2)查询中不能有没有建立INDEX的COLUMN用于OR子句
使用索引的小技巧:
(1)如果有多个字段一起建立INDEX,那么重复值越高的COLUMN在建立索引的子句中应该越优先,这样可以减小INDEX数量,加快速度
(2)索引越小,速度越快。如果对很大的COLUMN建立索引,索引就会很大。索引尽量在设计表的时候保证COLUMN的类型尽量小
(3)对长的COLUMN,比如VARCHAR,也可以选择只在COLUMN的前几位数据上建立索引