admin 管理员组

文章数量: 887021


2024年2月24日发(作者:手机怎样打开php文件)

mysql索引最左原则原理

MySQL的索引采用的技术叫做最左前缀原则。

索引中的关键字按照由左至右的顺序进行查找,每个关键字都必须以相同的顺序开始。也就是说,如果一个索引包含了多个列,那么MySQL必须要求第一个列必须匹配,然后才能继续进行下去。所以,MySQL采用的是最左前缀原则,即所有索引列都有一块匹配的最左边的前缀值。

比如说,有一个emp表,有dName、job、sal 几个字段,如下所示:

dName job sal

'A' 'CLERK' 500

'B' 'SALESMAN' 800

'C' 'MANAGER' 1000

现在,假设dName-job组成一个复合索引,查询dName='A' and job='CLERK'。MySQL根据最左原则,会首先搜索dName字段,dName能够匹配上,就会继续搜索job,因为job也能够匹配,所以就可以找到最终的结果。

最左前缀原则的一个重要意义在于,对于多列组合索引来说,如果查询请求无法满足最左前缀原则,即查询的条件的第一个字段不是索引的第一个字段,那么索引就不会被用来查询,也就无法起到加速查询效果,所以要尽可能保证查询语句

中,能够满足最左前缀原则。


本文标签: 查询 原则 前缀