数据库的索引与视图ppt
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
索引
-
为了使索引的使用效率更高,在创建索引的时候必须 考虑在哪些字段上创建索引和创建什么类型的索引
▪ 最适合建立索引的列,是出现在where子句中的列,而非select 关键字后面的列
▪ 考虑某列中值的分布。索引的列的基数越大,索引的效果越好 ▪ 使用短索引 ▪ 不要过度索引 ▪ 最左前缀匹配原则
MYSQL学习笔记 索引与视图
-
-
索引概述
▪ 索引是一个单独的、物理的数据库结构 ▪ 该结构中包括表中的一列或若干列的值以及相应的指向表中 物理标识这些值的数据页的逻辑指针的集合
▪ 索引依赖于数据库的表,作为表的一个组成部分 ▪ 一旦创建后,由数据库系统自身进行维护
▪ 存放于索引页面中 ▪ 个表的存储是由两部分组成的,一部分用来存放表 的数据页面,另一部分存放索引页面
设计 原则
-
B-TrHale Waihona Puke Baidue索引
▪ B+Tree:每一个叶子节点都包含指向下一个叶子节点的指针,从 而方便叶子节点的范围遍历。存放于索引页面中
▪ B-Tree通常意味着所有的值都是按顺序存储的,并且每一个叶子 页到根的距离相同,很适合查找范围数据。
存储 类型
-
哈希索引
▪ 哈希索引就是采用一定的哈希算法,把键值换算成新的哈希值, 检索时不需要类似B+树那样从根节点到叶子节点逐级查找,只需 一次哈希算法即可立刻定位到相应的位置,速度非常快
Tree索引高
存储 类型
-
索引失效
▪ Where子句的查询条件中有!= ▪ Where子句使用了mysql函数时,索引无效 ▪ 在使用like进行匹配查询,有左通配符%时,索引无效 ▪ 使用or语句来连接条件 ▪ 当索引列有大量重复时,sql查询可能不会去利用索引
存储 类型
-
视图
▪ 什么是视图
视图是由查询结果形成的一张虚拟表。
存储 类型
-
B+树索引和哈希索引的明显区别
▪ Hash 索引仅仅能满足"=","IN"和"<=>"查询,不能使用范围查询 ▪ Hash 索引无法被用来避免数据的排序操作 ▪ Hash 索引不能利用部分索引键查询 ▪ Hash 索引在任何时候都不能避免表扫描 ▪ Hash 索引遇到大量Hash值相等的情况后性能并不一定就会比B-
▪ 什么时候要用到视图
如果某个查询结果出现的非常频繁,也就是,要经常拿这个查询结果 来做子查询
视图
-
视图的作用
▪ 简化查询语句 ▪ 可以进行权限控制 ▪ 大数据分表时可以用到
视图
-
-
为了使索引的使用效率更高,在创建索引的时候必须 考虑在哪些字段上创建索引和创建什么类型的索引
▪ 最适合建立索引的列,是出现在where子句中的列,而非select 关键字后面的列
▪ 考虑某列中值的分布。索引的列的基数越大,索引的效果越好 ▪ 使用短索引 ▪ 不要过度索引 ▪ 最左前缀匹配原则
MYSQL学习笔记 索引与视图
-
-
索引概述
▪ 索引是一个单独的、物理的数据库结构 ▪ 该结构中包括表中的一列或若干列的值以及相应的指向表中 物理标识这些值的数据页的逻辑指针的集合
▪ 索引依赖于数据库的表,作为表的一个组成部分 ▪ 一旦创建后,由数据库系统自身进行维护
▪ 存放于索引页面中 ▪ 个表的存储是由两部分组成的,一部分用来存放表 的数据页面,另一部分存放索引页面
设计 原则
-
B-TrHale Waihona Puke Baidue索引
▪ B+Tree:每一个叶子节点都包含指向下一个叶子节点的指针,从 而方便叶子节点的范围遍历。存放于索引页面中
▪ B-Tree通常意味着所有的值都是按顺序存储的,并且每一个叶子 页到根的距离相同,很适合查找范围数据。
存储 类型
-
哈希索引
▪ 哈希索引就是采用一定的哈希算法,把键值换算成新的哈希值, 检索时不需要类似B+树那样从根节点到叶子节点逐级查找,只需 一次哈希算法即可立刻定位到相应的位置,速度非常快
Tree索引高
存储 类型
-
索引失效
▪ Where子句的查询条件中有!= ▪ Where子句使用了mysql函数时,索引无效 ▪ 在使用like进行匹配查询,有左通配符%时,索引无效 ▪ 使用or语句来连接条件 ▪ 当索引列有大量重复时,sql查询可能不会去利用索引
存储 类型
-
视图
▪ 什么是视图
视图是由查询结果形成的一张虚拟表。
存储 类型
-
B+树索引和哈希索引的明显区别
▪ Hash 索引仅仅能满足"=","IN"和"<=>"查询,不能使用范围查询 ▪ Hash 索引无法被用来避免数据的排序操作 ▪ Hash 索引不能利用部分索引键查询 ▪ Hash 索引在任何时候都不能避免表扫描 ▪ Hash 索引遇到大量Hash值相等的情况后性能并不一定就会比B-
▪ 什么时候要用到视图
如果某个查询结果出现的非常频繁,也就是,要经常拿这个查询结果 来做子查询
视图
-
视图的作用
▪ 简化查询语句 ▪ 可以进行权限控制 ▪ 大数据分表时可以用到
视图
-