查看mysql索引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也能够匹配,所以就可以到最终的结果。
最左前缀原则的一个重要意义在于,对于多列组合索引来说,如果查询请求无法满足最左前缀原则,即查询的条件的第一个字段不是索引的第一个字段,那么索引就不会被用来查询,也就无法起到加速查询效果,所以要尽可能保证查询语句中,能够满足最左前缀原则。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论