当前位置: 首页 > news >正文

烟台市福山区住房和建设局网站那个网站上有打码的任务做

烟台市福山区住房和建设局网站,那个网站上有打码的任务做,宝贝详情页制作模板,网站空间托管MySQL的覆盖索引 前言 当一个索引包含了查询所需的全部字段时,就可以提高查询效率,这样的索引又被称之为覆盖索引。 以MySQL常见的三种存储引擎为例:InnoDB、MyISAM、Memory,对于覆盖索引提高查询效率的方式均不同,…

MySQL的覆盖索引

前言

当一个索引包含了查询所需的全部字段时,就可以提高查询效率,这样的索引又被称之为覆盖索引

以MySQL常见的三种存储引擎为例:InnoDBMyISAMMemory,对于覆盖索引提高查询效率的方式均不同,

下面让我们分别讲讲:

InnoDB

InnoDB中,主键索引的叶子节点存储完整的数据行,称为聚簇索引,而唯一索引普通索引联合索引的叶子节点只存储索引字段和主键值,称之为二级索引

当一条查询sql用到的索引只包含部分需要的字段时,就需要先在二级索引中查到相应数据的主键字段,然后根据主键字段在主键索引中查到全部数据。回到主键索引中查询数据,这个就叫做回表,因为一次索引查询还查不到全部数据,还需要回表一次才能查到全部数据。

但是,如果sql查询所需的字段全部包含在用到的索引中,就可以在二级索引中直接查询到所需的全部数据,不需要再回表了,这种包含所需的全部字段的索引,就叫做覆盖索引

InnoDB中,覆盖索引可以减少回表的次数,提高查询效率。

MyISAM

MyISAM中,索引保存的是数据值,以及指向数据在磁盘中位置的指针

当一条sql查询没有用到索引时,就需要直接到磁盘中的数据文件进行搜索。

当一条sql查询用到索引的部分字段时,会先在索引中查到部分字段的指针,然后再到磁盘中根据指针查询到对应行,再在行中查询全部所需数据。

但是,如果sql查询用到的索引包含全部所需的字段时,也就是用到覆盖索引时,就可以直接在索引中查到全部所需字段的值,不需要再进行磁盘IO。

MyISAM中,覆盖索引可以减少磁盘IO的次数,提高查询效率。

Memory

Memory中,与在MyISAM中逻辑相似,不过Memory是将数据存储在内存中,虽然内存IO磁盘IO快很多,但使用覆盖索引仍有利于减少内存IO,提高查询效率。

需要注意的是,本文并未特别考虑同时使用其它索引的情况,不使用覆盖索引而使用其它索引仍然可能达到同样的效果。

http://www.yayakq.cn/news/958110/

相关文章:

  • 涪陵网站建设公司网址之家
  • 电子商务网站建设 课后答案威海网站建设费用
  • 中山服装网站建设无锡网站的优化
  • 免费搭建购物网站免费空间如何放网站
  • 该如何建设和优化一个网站网站建设目标初步目标
  • 青海省建设工程监理协会网站建网站服务器是什么东西
  • 网站页面头部设计说明佛山网站搭建公司哪家好
  • 滕州网站建设培训微信扫二维码网页空白
  • 家具技术支持东莞网站建设苏州沧浪区做网站的
  • 域名做网站名什么是竞价推广
  • 备案期间网站能用吗电子政务网站系统
  • 南宁网站建设博信重庆市哪个区最繁华
  • 网站怎么备份没有rss源的网站如何做rss订阅
  • 枣庄三合一网站开发在手机上怎么建造网站
  • 如何做产品网站建设卖东西专业网站网上
  • 深圳网站备案青岛大学网站建设
  • 数字营销网站建设网站开发记入什么会计科目
  • 广西智能网站建设报价东莞24小时推广首页
  • 做网站蓝色和什么颜色搭配好看国外有名的网站
  • 洛阳网站建设制作多少钱亚马逊的网络营销方式
  • 北京市建设工程造价管理协会网站tinypng图片压缩网站
  • 绍兴专业做网站公司酒类网站建设方案案
  • 怎样建外贸网站网站开发工程师和软件工程
  • 金华网站推广什么是域名系统 网站建设教程
  • 大同建设局网站携程网站建设的优缺点
  • 公司网站开发题目来源wordpress设置导航栏
  • 桂林网站优化公司网站cms是什么
  • 成都科盛兴网站建设有限公司只做男生穿搭的网站
  • 网站备案的时候可以做网站吗怎样做网站后台
  • wordpress 视频站模板全屏产品网站