MySQL索引常见术语(索引下推、索引覆盖、最左匹配等)

news2024/11/23 8:43:00

一:背景

        我们在面试中都知道,对于MySQL索引是必问的。大家也应该都知道MySQL的数据结构,什么是索引。其中在面试中,面试官也经常问,你做过哪些优化?本文主要是介绍MySQL索引的一些常见术语,比如索引下推、索引覆盖、最左匹配等,这些其实也是MySQL优化的一部分,能够熟练运用也是可以提升MySQL性能。

二:索引常见术语

2.1 聚簇索引和非聚簇索引

聚簇索引:数据和索引存储在一起,数据访问更快、叶子节点逻辑连续的所以排序、范围查找会更快。InnoDB的主键索引我们叫做聚集索引
innodb存储引擎在进行插入数据的时候,数据必须跟某个索引列存储在一起,这个索引列可以是主键,如果没有主键,选择唯一健,如果没有唯一健,选择6字节的rowid(隐藏列)来进行存储。
数据必定是跟某个索引绑定在一起的,绑定的索引叫聚簇索引(innodb只有主键索引才是聚簇索引)。
其他索引(辅助索引)的叶子存储的数据不再是一整行记录,而且聚簇索引的id值。所以聚簇索引保存数据,辅助索引加快查询速度。

非聚簇索引:数据和索引存储没有存储在一起;MYISAM的是非聚集索引,索引和数据是分开存储的

2.2 回表

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

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

相关文章

谷歌浏览器推出全新功能:可自动检测恶意软件!

近日,谷歌正在测试 Chrome 浏览器的一项新功能。该功能可在已安装的扩展程序从 Chrome 网上商城删除时向用户发出恶意软件提示警告。 在Chrome 应用商店里一直有人源源不断的发布浏览器扩展程序,有很多都会通过弹出式广告和重定向广告进行推广。 这些扩…

社交工程和钓鱼攻击防范: 分析针对人类心理和社交工程的攻击技术,并介绍预防这些攻击的方法

第一章:引言 随着科技的不断进步,网络安全问题愈发凸显。在这个数字化时代,社交工程和钓鱼攻击成为黑客们获取敏感信息的常用手段。这些攻击不是基于技术漏洞,而是利用人类心理弱点来进行。本文将深入探讨社交工程和钓鱼攻击的原…

一个改进型的差分运放分析

在使用单个集成运放构成的加减运算电路时,存在两个缺点:一是电阻的选取和调整不方便,而是对于每个信号源的输入电阻均较小(即相对于信号源内阻,电路的输入阻抗较小)。 因此可以采用下图的两级电路实现差分比…

Obsidian 入门使用手册

文章目录 一、Obsidian 入门1.1 什么是 Obsidian1.2 安装 Obsidian 二、Obsidian 配置2.1 创建第一个笔记2.2 设置界面语言使用中文2.3 主题 三、小结 一、Obsidian 入门 1.1 什么是 Obsidian Obsidian 是一款基于 Markdown 语法编辑的笔记软件。与传统的 Markdown 软件不同的…

图神经网络与分子表征:1. 分子图和图神经网络基础

CSDN的朋友们大家好,好久没写系列文章了。 近期读了很多图神经网络(GNN)和分子表征(molecular representation)的论文,正好最近不是很忙,所以我决定把自己的学习过程记录下来,与大家…

Python 在logging.config.dictConfig()日志配置方式下,使用自定义的Handler处理程序

文章目录 一、基于 RotatingFileHandler 的自定义处理程序二、基于 TimedRotatingFileHandler 的自定义处理程序 Python logging模块的基本使用、进阶使用详解 Python logging.handlers模块,RotatingFileHandler、TimedRotatingFileHandler 处理器各参数详细介绍 …

pandas连接查询

df1数据如下 df2数据如下 连接查询代码 -1 import pandas as pddf1 pd.DataFrame({id:[1001,1002,1003,1004],name:[Hu,Dotu,Evp,Swe]}) df2 pd.DataFrame({id:[1001,1001,1003,1004, 1003],course:[c1,c2,c3,c2,c1],score:[100, 98, 64, 84, 69]})result pd.merge(df1, df…

【C++初阶】vector容器

👦个人主页:Weraphael ✍🏻作者简介:目前学习C和算法 ✈️专栏:C航路 🐋 希望大家多多支持,咱一起进步!😁 如果文章对你有帮助的话 欢迎 评论💬 点赞&#x1…

0007Java程序设计-jsp问卷调查系统设计与实现

摘 要 随着社会不断进步与发展,生活节奏不断加快,信息已经成为我们生活中不可缺少的一部分,很多企业需要掌握大量的信息来了解特定用户的需求,传统的做法是组织大量的人力物力对用户散发调查表,然后对收集的信息进行统…

python 基础篇 day 1 初识变量和数据类型

文章目录 变量变量作用——用于存储和表示数据。变量命名规则命名法大驼峰小驼峰下划体n j i a x 通常作为临时变量使用 建议 变量种类全局变量(Global Variables)局部变量(Local Variables)静态变量(Static Variables…

linux常用基础命令与文件结构汇总

1 学习目标 说出Linux下的目录结构和常见目录的作用熟练使用Linux下的相对路径和绝对路径熟练使用Linux下常用文件和目录操作相关的命令熟练使用修改用户权限、用户和用户组相关的命令熟练使用文件的查找和检索相关的命令熟练掌握Ubuntu下的软件安装和卸载熟练使用压缩工具完成…

七夕节日表白:七大网页风格与其适用人群

🌷🍁 博主猫头虎 带您 Go to New World.✨🍁 🦄 博客首页——猫头虎的博客🎐 🐳《面试题大全专栏》 文章图文并茂🦕生动形象🦖简单易学!欢迎大家来踩踩~🌺 &a…

YOLOv5源码中的参数超详细解析(5)— 验证部分val(test).py

前言:Hello大家好,我是小哥谈。YOLOv5项目代码中,val.py 是一个代表验证(validation)的 Python 脚本文件名。通常在机器学习或深度学习的任务中,我们会将数据集分为训练集和验证集,使用训练集来…

请说人话!如何理解基本分页存储管理

一、默认设定 (一)按字节编制一个房间可以装8只猪猪 现在的计算机一般都是按字节编址的。这个不理解的话,可以看我的文章为什么20位地址总线决定寻址空间是1MB“http://t.csdn.cn/Eo2nE” (二)内存采用非连续分配方…

法线矩阵推导

法线矩阵推导 https://zhuanlan.zhihu.com/p/72734738 https://juejin.cn/post/7113952418613690382 https://blog.csdn.net/wangjianxin97?typeblog 1、为什么需要法线矩阵 vec3 normalEyeSpace modelViewMatrix * normal;如果模型矩阵执行了非等比缩放, 顶点的改变会导致法…

基于蝴蝶算法优化的BP神经网络(预测应用) - 附代码

基于蝴蝶算法优化的BP神经网络(预测应用) - 附代码 文章目录 基于蝴蝶算法优化的BP神经网络(预测应用) - 附代码1.数据介绍2.蝴蝶优化BP神经网络2.1 BP神经网络参数设置2.2 蝴蝶算法应用 4.测试结果:5.Matlab代码 摘要…

sNMFcross-entropyK

0.简单介绍 稀疏非负矩阵(sNMF)和最小二乘优化来产生祖先比例估计数的祖先推断算法,这个算法呢与admixture来说差别不是很大,但是优点就是快,运算速度可以快到10-30倍左右。 1.安装 这一步不必多说,下载…

tailscale使用教程(远程连接服务器)

tailscale:将多个设备放在同一局域网下,实现异地组网。 首先进入tailscale官网,根据系统需求进行下载 需要远程的设备和被远程的设备都需要下载。 然后两个设备均登录同一账号即可 注:这里重点讲一下linux操作系统上的操作&…

PID输出PWM温度控制(PID输出PWM的各种方法介绍)

这篇博客主要介绍PID的输出如何和PWM输出进行绑定,PID控制算法和源代码大家自行查看PID专栏,这里不再赘述。常用链接如下: 位置式PID(S7-200SMART 单自由度、双自由度梯形图源代码)_RXXW_Dor的博客-CSDN博客有关位置型PID和增量型PID的更多详细介绍请参看PID专栏的相关文章…

读SQL学习指南(第3版)笔记02_数据类型

1. 命令行工具 1.1. mysql -u root -p; 1.2. mysql> show databases; 1.3. mysql> use sakila; 1.4. mysql> SELECT now(); 1.4.1. now()是MySQL的内建函数 1.4.2. 返回当前日期和时间 1.5. mysql> SELECT now() FROM dual…