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

宝鸡做网站哪家公司好磁力库

宝鸡做网站哪家公司好,磁力库,欧洲b2b平台有哪些,网站建设发展现状文章目录 前言什么时候需要(不需要))使用索引?有哪些优化索引的方法前缀索引优化索引覆盖优化索引失效场景 总结 前言 今天来讲一讲 MySQL 索引的高频面试题。主要是针对前一篇文章 MySQL索引入门(一文搞定)进行查漏补…

文章目录

  • 前言
  • 什么时候需要(不需要))使用索引?
  • 有哪些优化索引的方法
    • 前缀索引优化
    • 索引覆盖优化
    • 索引失效场景
  • 总结


前言

今天来讲一讲 MySQL 索引的高频面试题。主要是针对前一篇文章 MySQL索引入门(一文搞定)进行查漏补缺,建议大家看完前一篇再看这一篇。


什么时候需要(不需要))使用索引?

我们先来看看索引的优缺点吧。

优点:可以快速查询的效率,查询是在增删改查中最经常使用。

缺点:创建索引是要用到物理空间的。其次维护索引,当数据库进行增删改的时候,索引也要动态的进行变化。这样子的话过多的索引会影响到数据库的增删改性能。

从优缺点我们来切入什么需要使用索引,什么时候不需要索引

什么时候需要使用索引?

  1. 当字段经常出现在 where 当做条件中,我们可以考虑根据字段添加索引。
  2. 当字段经常出现在 order By 和 Group By 时,我们可以考虑根据字段添加索引。
  3. 当字段频繁的查询,而少更新时,我们可以考虑根据字段添加索引。

什么时候不需要使用索引?

  1. 反之,将字段频繁的更新时,不需要使用索引,因为索引的意义就是加速查询,既然用不上就不需要创建了。

  2. 当数据量少时,不用因为查询性能慢而烦恼时,就不需要使用索引。

  3. 当字段经常设计计算、函数等操作时,不需要使用索引,因为这会造成索引失效。

  4. 当有 where,order by ,group by 等关键词使用不到的字段,不需要使用索引,因为索引的价值是快速定位,这样子的话提现不出价值而且索引会占用物理空间。

  5. 当有字段存储了大量的重复数据时,不需要创建索引,比如性别,只有男/女两种值,这时候的索引是起不到作用的。因为MySQL 有个优化器会在执行前将SQL进行优化,如果有太多重复的数据,优化器默认是不会使用索引的。

有哪些优化索引的方法

前缀索引优化

前缀索引优化就是当类型为字符串(比如:varchar)的字段,该字段过长时,我们可以使用前缀索引就是将该字段的前几个字符作为索引。

这样子既可以节省空间,又可以起到索引优化查询的性能。

当然这种也有缺点。

  1. order by 无法使用前缀索引
  2. 前缀索引无法起到索引覆盖优化。

索引覆盖优化

索引覆盖优化一般是使用联合索引,就是B+树的叶子结点是包含索引(key)和数据(data)的。当使用联合索引时
,如果联合索引中的值包含了我们需要查询的值,那么就不用进行回表查询了。回表查询就是根据这次查询到的索引值再进行一次查询。

比如学生表,我们要查询出studentName,studentPhone,其中card(身份证卡号)是唯一值,我们创建联合索引(card、studentName、studentPhone)。然后我们使用SQL语句进行查询

select card,studentName, studentPhone from student where card = '445122335464654654463'

这样子就是索引覆盖优化拉。

索引失效场景

就不详细解释了,大家感兴趣底层原理可以阅读 “小林coding”的网站。

  1. 当like关键字进行左模糊(%xx)查询和左右模糊(%xx%)查询时会失效。因为索引是整个值,进行左模糊的话无法匹配出来。
  2. 当索引字段进行计算,函数,类型转化时,会出现索引失效。
  3. 当联合索引不符合最左匹配原则时会出现索引失效。
  4. where 条件字段中,如果 OR 前字段是索引列,后字段不是,会索引失效。

总结

总的来说,我们只要符合索引的优缺点就可以知道索引该如何使用拉。优点:快速查询,缺点:浪费空间,影响数据更新性能。

最后建议大家都可以去读一读 小林coding网站的索引篇,知道底层原理,知识才更牢固。


有启发点个赞 🌹

好文章不要错过,最近給大家分享的文章

MySQL的基础知识

1.MySQL的基础架构
2.SQL语句的执行流程
3.MySQL 的存储引擎

MySQL 索引

1.MySQL索引入门(一文搞定)

预计下篇分享:MySQL 事务基础知识

本篇参考:小林coding ,JavaGuide

我是小辉,正在进行 Java 实习的 24 届应届毕业生。欢迎关注,持续分享,包括但不限于技术文章。全网同名…

http://www.khdw.cn/news/57182.html

相关文章:

  • 电子商务网站的建设的意义新闻实时报道
  • 网站建设阶段网络推广文案策划
  • dw里响应式网站怎么做防恶意竞价点击软件
  • 梧州网站设计制作服务至上百度竞价排名一年费用
  • 做商城网站用什么框架外贸高端网站设计公司
  • 建筑网片的用途广州seo排名优化
  • 南京网站制作学校0元免费做代理
  • 做百度移动端网站优化大师怎么样
  • 做网站编辑有前途推广页面制作
  • h5响应式网站重庆百度seo排名
  • 建筑模板规格型号网站seo哪里做的好
  • 专门做试题的网站郑州网站制作
  • dw网站首页的滚动图片怎么做站内搜索引擎
  • 集约化网站建设的函中国站长之家官网
  • 药业做网站的网站目标分析百度页面推广
  • 住小帮 家居装修设计平台成都官网seo厂家
  • 山东省政府采购网 网站建设 招标合肥网站优化软件
  • 网站首页做跳转产品推广平台排行榜
  • 购物网站的建设的好处百度广告联盟点击一次多少钱
  • 网站运营的具体工作包括哪些模拟搜索点击软件
  • 做yield网站多少钱系统优化助手
  • 高端做网站企业网站优化服务公司
  • 网站建设代码网站建设的数字化和互联网化
  • 做网站官网江西seo
  • 一个主机域名可以做多少个网站网络推广方法的分类
  • 深圳网站开发专业如何用模板做网站
  • 那些网站可以做条形码淘宝关键词查询工具哪个好
  • 网站建设制作包括哪些方面厦门seo排名
  • vs2017 网站开发农产品网络营销推广方案
  • 寺庙网站建设下列哪些店铺适合交换友情链接