使用数据库索引,可以减少数据的访问,从而提成查询的效率(但是索引会增加插入、修改和删除的效率),索引使用的好,可以让性能提升,如果使用不好,反而会降低性能。
-
索引的类型
B-TREE索引、位图索引、全文索引等,最常用的就是B-TREE索引,而且包括很多扩展索引,比如组合索引,函数索引,反向索引等。
-
什么是B-TREE索引
也称为平衡树索引(Balance Tree),它是一种按字段排好序的树形目录结构。
一个普通的BTREE索引结构示意图如下所示:
如果我们把一个表的内容认为是一本字典,那索引就相当于字典的目录。一个字典按部首+笔划数的目录,相当于给字典建了一个按部首+笔划的组合索引。
- 索引失效
【索引失效】这点非常非常的重要,不是说你加上索引了,就永远会有效,错误的SQL书写会导致索引失效。
-
不等于操作:? 、not in('')
-
进行了运算后的字段:column+1(简单的运算),function(column)(函数)
-
含前导模糊查询:like '%xxx'
-
IS NULL
-
隐式类型转换:column是char类型,但是写成column = 123(右边是另外一种类型)
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 xxx@163.com 举报,一经查实,本站将立刻删除。