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

郑州专业建网站购物网站销售管理

郑州专业建网站,购物网站销售管理,市通建设工程质量监督局网站,手机网站建站流程文章目录 前言什么时候需要(不需要))使用索引?有哪些优化索引的方法前缀索引优化索引覆盖优化索引失效场景 总结 前言 今天来讲一讲 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.15wanjia.com/news/161643.html

相关文章:

  • 新建网站如何调试网站首页布局的设计
  • 本溪做网站网站域名空间
  • 网站建设推广实训总结qq群推广平台
  • 百度小说app下载外贸网站建设优化推广
  • 视频直播网站开发与制作免费网络推广的方法
  • 安徽理工大学新校区建设网站佛山市网络推广
  • 分销渠道南宁网站优化
  • 衡水网站建设浩森宇特临沂网站制作加速企业发展
  • 一个网站添加多个网址营销网站建设前期准备
  • 一个空间怎么做两个网站 跳转中小企业网站建设市场
  • 网站触屏版wordpress 用户密码加密
  • 网站推广平台怎么做网站友情链接要加什么
  • 番禺做网站的重庆网络公司网站建设
  • 成都营销类网站设计千库网登录入口
  • 建筑工程网站建设方案网站建设三网合一是什么
  • 超级网站模板下载网上做网站
  • 建站有哪些需求大学生简历模板
  • 温州哪里有网站优化wordpress写书typecho主题
  • 天津做网站制作内容分发网络CDN可以建设网站吗
  • 古典风格网站模版个人网站和企业网站
  • 360网站挂马检测html如何做网站
  • 哈尔滨网站优化咨询asp是网站开发吗
  • 重庆潼南网站建设报价智慧团建系统官方网站登录
  • 杭州滨江区建设局网站网站怎么做域名解析
  • yes风淘宝网站wordpress果酱
  • 手机网站北京影视广告制作拍摄公司
  • 高端网站制作流程河南炒股配资网站开发
  • 凡科建站做的网站有什么短板建一个网站带管理需要多少钱一年
  • 上海网站关键排名宁波seo公司排名
  • 外国购物平台网站大全下载app到手机