| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 大数据 -> MySQL数据库索引及失效场景 -> 正文阅读 |
|
[大数据]MySQL数据库索引及失效场景 |
MySQL数据库索引及失效场景1. MySQL索引概述1.1 索引的概念什么是索引,索引就是排好序的快速查找数据结构。 1.2 索引的特点索引的优点 2.通过索引列对数据进行排序, 降低数据排序的成本, 降低了CPU的消耗。 索引的缺点 2.实际上索引也是一张表, 该表保存了主键与索引字段, 并指向实体表的记录, 所以索引列也是要占用空间的。 1.3 索引的分类MySQL 使用的是 Btree 索引。另外还有B+tree 索引,B-tree 索引,具体原理不在细说,原理详情参考官网。 单值索引 唯一索引 主键索引 复合索引 1.4 索引的使用场景适合创建索引的情况 不适合创建索引的情况 2. 索引失效场景2.1 索引失效9种场景
2.2 索引失效场景总结
3. 索引失效验证索引测试环境 3.1 全值匹配
创建索引前 3.2 最佳左前缀
查询字段与索引字段顺序的不同会导致, 索引无法充分使用, 甚至索引失效! 3.3 索引计算不要在索引上做任何计算! 1.在查询列上使用函数
3.4 索引范围:索引列上不能有范围查询
建议: 将可能做范围查询的字段的索引顺序放在最后 3.5 索引覆盖:尽量使用覆盖索引
3.6 不等: 使用不等于(!= 或者 <>)的时候mysql 在使用不等于(!= 或者<>)时, 有时会无法使用索引会导致全表扫描。 3.7 null:字段的is not null 与is null当字段允许为 Null 的条件下: 3.8 like:like的前后模糊匹配前缀不能出现模糊匹配! 3.9 or:减少使用or使用 union all 或者 union 来替代: |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 15:01:33- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |