面试时回答索引是为了提高查询效率,面试官问“没了??”(MySQL索引的面试题目)

MySQL中索引部分是面试官最常问道的,索引说破天就是充当书的目录的作用,提高查询效率,但是面试的时候这样回答不够优雅,如何让面试官眼前一亮

关于MySQL索引的面试题目,我总结了如下思维导图,需要完整MySQL的面试思维导图可以私信我领取,也可以持续关注我的MySQL专栏,我会继续分享MySQL相关面试题,助力大家在面试时被问到MySQL轻松拿下

一、明确的前提

索引不是万能的,索引并不适用于所有场景,也不能说索引越多越好。索引固然可以提高查询速度,但是索引同样也有缺点,比如:

  • 索引需要占用磁盘空间,数量越多,占用的磁盘空间越大
  • 创建和维护索引要耗费时间,时间随着数据量的增加而增大
  • 插入、更新和删除操作性能下降:当创建一个索引时,数据库在执行增删改操作时,不仅要对表中数据进行维护,还需要对相关索引进行维护

索引的设计也有一些原则:

  1. 选择区分度高的列作为索引(不要选择性别这样区分度极低的列作为索引)
  2. order by、group by、distinct后面的字段建索引,能避免临时表和文件排序
  3. 索引并不是越多越好,非必要不创建索引
  4. 频繁查询的字段要建索引
  5. 创建索引尽量选择普通索引而不是唯一索引
  6. 联合索引,遵循最左前缀
  7. 避免类型长度大的字段做索引,text、longtext这种字段,索引占用空间大,加载到内存耗时,还可能把其他热点数据挤出Buffer Pool

二、索引的分类

一张图就搞定:

聚簇索引和非聚簇索引的区别?

1.聚簇索引叶子节点包含了实际的数据行,非聚簇索引的叶子节点任然是索引,存在一个指针指向对应的数据块,当通过聚簇索引查找数据时,可以直接从索引中获得数据,无需回表;

2.聚簇索引键值的逻辑顺序决定了相应行的物理存储顺序,非聚簇索引的逻辑顺序与磁盘上行的物理存储顺序不同;

3.每张表只能有一个聚簇索引,而可以有多个非聚簇索引

4.聚簇索引在范围查询和排序查询更有效率

B+树VSB 树VS二叉树VSHash

B+树 VS B 树:B+树只在叶子节点存储数据,而B树非叶子节点也要存储数据,所以在相同的IO磁盘次数下,就能查询更多的节点;B+树叶子节点采用的是双链表链接,更适合范围查询;

B+树 VS 二叉树:即使数据达到千万级别,B+树的高度维持在3-4层左右,相比于二叉树来讲树高更低,IO磁盘操作更少

B+树 VS Hash:Hash在做等值查询的时候效率较高,但是Hash不适合做范围查询

三、索引失效场景

  1. 模糊查询(like)的不当使用
  2. 在索引列中使用函数
  3. 联合索引不满足最左前缀原则
  4. 在索引列中进行表达式计算
  5. 在where子句中如果or前的条件列是索引列,而or后面的条件列不是索引列,也会导致索引失效
  6. 隐式类型转换,比如遇到字符串和数字比较时,会自动把字符串转为数字,然后进行比较,通过CAST函数完成隐式类型转换,等同于索引列使用了函数

四、索引使用技巧

索引下推(主要用在联合索引中)

把部分查询条件从server层下推到存储引擎层,在引擎层就把不符合条件的数据过滤掉,不需要回表查完整数据;

索引覆盖

SQL中查询的所有字段,在索引B+树的叶子节点上都能找到那些索引,从二级索引中查询得到记录,而不需要通过聚簇索引查询获得,可以避免回表操作

前缀索引

使用前缀索引是为了减小索引字段大小,可以增加一个索引页中存储的索引值,有效提高索引的查询速度。在一些大字符串的字段作为索引,使用前缀索引可以帮助我们减小索引页的大小;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1139862.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

全球最强电子书管理神器!完全免费,支持电子书管理/编辑/阅读/格式转换,epub阅读器,电子书格式转PDF等

下载链接 https://tool.nineya.com/s/1jbuataao 软件介绍 Calibre是一款完全免费和开源,支持跨平台使用的电子书管理器。软件在Windows、Mac、Linux都可以正常使用。其常用的功能有书库管理,格式转换,邮件电子书推送等,Calibre…

怎么给电脑隐私文件夹内的文件加密?用它一键加密,文件瞬间全部消失!一秒保护隐私~

下载链接 https://tool.nineya.com/s/1jbuat9q6 软件介绍 怎么给电脑隐私文件夹内的文件加密?用它一键加密,文件瞬间全部消失!一秒保护隐私~ 软件特点 自定义密码加密加密后不可见必须使用密码解密,完美保护隐私 软件截图

吾爱置顶!“小黑子”大神真的强,免费办公文档格式转换工具箱,PDF格式转换,永久免费~坤tools

下载链接 https://tool.nineya.com/s/1jbuat9gv 软件介绍 坤_Tools是一款集成了多种文档处理功能的实用软件,由吾爱论坛的开发者jidesheng6精心打造。它支持广泛的文档格式转换,包括但不限于Word、PDF、Excel和图片之间的相互转换,极大地方…

Qwen2.5模型体验对比:5块钱测试3个版本,拒绝浪费

Qwen2.5模型体验对比:5块钱测试3个版本,拒绝浪费 1. 引言:为什么需要低成本测试Qwen2.5? 作为算法工程师,我们经常面临模型选型的难题。Qwen2.5系列提供了多个版本(如7B、14B、32B等)&#xf…

AI智能实体侦测服务为何火爆?三大核心卖点深度拆解

AI智能实体侦测服务为何火爆?三大核心卖点深度拆解 近年来,随着自然语言处理(NLP)技术的不断成熟,AI 智能实体侦测服务逐渐成为信息抽取领域的明星应用。无论是新闻媒体、金融风控、政务文档处理,还是企业…

Qwen2.5-7B保姆级教程:云端GPU免配置,1小时1块快速体验

Qwen2.5-7B保姆级教程:云端GPU免配置,1小时1块快速体验 引言:产品经理的AI验证困境 作为产品经理,当你发现一个可能改变产品体验的AI技术时,最痛苦的是什么?不是技术理解难度,而是漫长的等待。…

AI智能实体侦测服务如何导出结果?HTML/PDF生成实战方法

AI智能实体侦测服务如何导出结果?HTML/PDF生成实战方法 1. 引言:AI 智能实体侦测服务的应用价值 在信息爆炸的时代,非结构化文本数据(如新闻、报告、社交媒体内容)占据了企业数据的绝大部分。如何从中高效提取关键信…

AI智能实体侦测服务省钱技巧:免配置镜像+轻量计算部署案例

AI智能实体侦测服务省钱技巧:免配置镜像轻量计算部署案例 1. 背景与痛点:传统NER服务的成本与复杂性 在自然语言处理(NLP)的实际应用中,命名实体识别(Named Entity Recognition, NER) 是信息抽…

AI实体识别服务对比:RaNER与RoBERTa模型

AI实体识别服务对比:RaNER与RoBERTa模型 1. 技术背景与选型挑战 在自然语言处理(NLP)领域,命名实体识别(Named Entity Recognition, NER) 是信息抽取的核心任务之一。其目标是从非结构化文本中自动识别出…

Qwen2.5多模态避坑指南:云端GPU实测省下万元显卡钱

Qwen2.5多模态避坑指南:云端GPU实测省下万元显卡钱 引言:为什么选择云端测试Qwen2.5? 作为小型工作室老板,你可能正在考虑引入AI工具来提升工作效率,但又担心买错硬件浪费资金。Qwen2.5作为阿里云最新开源的多模态大…

Qwen2.5-7B文档摘要指南:没GPU笔记本也能跑,1小时1块

Qwen2.5-7B文档摘要指南:没GPU笔记本也能跑,1小时1块 引言:法律人的AI助手困境 王律师最近接手了一个并购项目,需要在一周内完成87份合同的条款比对和风险点摘要。团队熬夜加班时,实习生小张突然提议:&qu…

AI智能实体侦测服务性能评测:响应速度与并发能力实测数据

AI智能实体侦测服务性能评测:响应速度与并发能力实测数据 1. 背景与评测目标 随着自然语言处理(NLP)技术的快速发展,命名实体识别(Named Entity Recognition, NER)已成为信息抽取、知识图谱构建、智能客服…

如何高效提取机构名?AI智能实体侦测服务参数详解教程

如何高效提取机构名?AI智能实体侦测服务参数详解教程 1. 引言:为什么需要高效的机构名提取? 在信息爆炸的时代,非结构化文本数据(如新闻、社交媒体、企业报告)中蕴含着大量关键信息。其中,机构…

Qwen2.5论文润色神器:学生特惠1元体验,免显卡跑大模型

Qwen2.5论文润色神器:学生特惠1元体验,免显卡跑大模型 1. 为什么你需要Qwen2.5论文润色工具 作为一名留学生,写英文论文时最头疼的莫过于语言表达问题。Grammarly虽然能检查基础语法错误,但对于学术论文特有的复杂句式、专业术语…

收藏!154万年薪引爆圈:小白程序员必看的大模型开发入门指南

2025年春,一则招聘信息在程序员圈子掀起轩然大波:某头部科技企业为“大模型应用开发工程师”岗位开出154万年薪。这并非博眼球的营销套路,而是招聘市场上真实成交的案例。当“35岁职业瓶颈”“技术内卷疲惫”成为众多开发者的日常焦虑&#x…

RaNER模型部署实战:构建企业知识图谱的第一步

RaNER模型部署实战:构建企业知识图谱的第一步 1. 引言:为什么实体识别是知识图谱的基石? 在企业级知识管理中,非结构化文本(如新闻、报告、合同)占据了信息总量的80%以上。如何从中高效提取关键信息&…

题目1099:校门外的树

#include<iostream> #include<map> using namespace std; int main(){int L,num;cin>>L>>num;int sum0;map<int,int>treemained;for(int i0;i<L;i){treemained[i]0;//初始时所有树的状态都为0 }//对需要移除的树进行标记 for(int i0;i<num…

2026想转行?渗透测试vs网安工程师vs安全运维,应该怎么选?零基础入门到精通,收藏这篇就够了

2026想转行&#xff1f;渗透测试vs网安工程师vs安全运维&#xff0c;应该怎么选&#xff1f; 9月&#xff0c;更是求职人眼中的“金九银十”黄金期&#xff0c;所以不少人在这个时候会有转行的想法&#xff0c;尤其是IT中人&#xff0c;都想进入到网安行业中来分一杯羹。 但是…

AI智能实体侦测服务备份恢复:数据持久化部署最佳实践

AI智能实体侦测服务备份恢复&#xff1a;数据持久化部署最佳实践 1. 背景与挑战&#xff1a;AI服务中的数据安全需求 随着自然语言处理&#xff08;NLP&#xff09;技术在企业级应用中的深入落地&#xff0c;AI智能实体侦测服务已成为信息抽取、知识图谱构建和内容审核等场景…

【收藏】大模型三种协作模式详解:从Embedding到Agent,程序员必备指南

文章解析了大模型与人类协作的三种演进模式&#xff1a;Embedding&#xff08;人类为主&#xff0c;AI辅助提供参考&#xff09;、Copilot&#xff08;人机协同&#xff0c;共同完成任务&#xff09;和Agent&#xff08;AI自主执行&#xff0c;人类仅需设定目标&#xff09;。这…