zoukankan      html  css  js  c++  java
  • 什么是联合索引?

    概念

    包含两列或更多列以上的索引,称为联合索引;同时又被称为复合索引。

    结构图

    匹配规则

    1、联合索引结构上的叶子节点包含了多个索引列。
    如上图中所示包含:年龄(age)姓(firstname)名(lastname)

    2、在联合索引匹配过程中,首先会将联合索引中的第一个索引条件和节点中的第一个索引列进行匹配。
    如果匹配成功,那么接着匹配第二个索引条件和第二个索引列。依次类推,直到所有的索引条件都完成匹配。

    假设 SQL 语句如下:
    select * from user where age = 12 and firstname like '%李';
    开始匹配第一个索引条件 age ,如果搜索到 age = 15 这个索引值时,就进行下一个索引条件 firstname 的匹配,当搜索到 firstname = 王安 这个索引值时,已经不满足索引条件了,并且没有了第三个索引条件,至此索引匹配就结束了。

    总结

    本文主要是介绍了联合索引的定义,以及联合索引的存储结构。还通过举例,来说明联合索引的具体匹配规则。
    在我们实际编写 SQL 语句的过程中,可能会出现某一个索引条件和节点中的索引列位置不一致的情况。如果出现
    这一种情况,那么只会匹配部分的索引列,就提前结束索引的匹配了。我们将会在下一篇文章中介绍联合索引的 "最左匹配原则"。

  • 相关阅读:
    JDBC 处理sql查询多个不确定参数
    网页跳转方法总结
    图片上传,直接在网页中显示(支持IE,谷歌,火狐浏览器)
    Oracle报 ORA-00054资源正忙的解决办法
    js对cookie的操作:读、写、删
    认识SignalR
    sql 查询结果用逗号分隔到一列里
    异步编程之await的使用
    应用程序池
    判断list重复扩展方法
  • 原文地址:https://www.cnblogs.com/yxhblogs/p/13464046.html
Copyright © 2011-2022 走看看