资讯专栏INFORMATION COLUMN

SQL优化之最左前缀原则分享

IT那活儿 / 847人阅读
SQL优化之最左前缀原则分享

点击上方“IT那活儿”公众号,关注后了解更多内容,不管IT什么活儿,干就完了!!! 




索引结构





联合索引结构


所以可以沿着这两个索引树来进行检索:
所以where条件里的内容看是否能走索引则看最左前缀原则是否满足。




常见案例


最左前缀的使用,有两条说明:

1. Mysql 从左向右匹配直到遇到范围查询(>、<、between 、like)就停止匹配。

示例:

  • where a =1 and b =2 and c >3 and d =4。
    如果建立( a , b . cd )顺序的索引, d 是用不到索引。
    如果建立( ab , d , c )顺序的索引则都可以用到。
2. where 条件中=和 in 是可以乱序的, mysql 的查询优化器会帮你优化成索引可以识别的形式。

示例:

  • 建立( a , b , c )索引。
    where a =1 and b =2 and c =3。
    where b =2 and a =1 and c =3。
这个对于oracle和mysql都是一样的。
因此对于联合索引,等号查询条件的乱序是无所谓的。


END



本文作者:张德桥

本文来源:IT那活儿(上海新炬王翦团队)

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/129460.html

相关文章

  • 数据库索引

    摘要:通过增加额外的写操作和存储空间来维护数据库索引,可以提高从数据库中读取数据的速度。数据库索引的实现常见的数据库索引实现有平衡树树树哈希树,树参考,中的索引数据库支持多种索引类型,如索引,哈希索引,全文索引等等。 数据库索引简介 数据库索引的定义 数据库索引是一种数据结构。通过增加额外的写操作和存储空间来维护数据库索引,可以提高从数据库中读取数据的速度。通过索引,不需要搜索数据库的每一条...

    Towers 评论0 收藏0

发表评论

0条评论

IT那活儿

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<