sql:SQL优化知识点记录(三)

news2024/9/25 23:19:10

(1)explain之select_type和table介绍

简单的查询类型是:simple

 

外层 primary,括号里subquery

 用到了临时表:derived

 

 

 

(2)explain之select_type介绍

trpe反映的结果与我们sql是否优化过,是否是最佳状态息息相关

 

 

最简单的查询啥都没有改type就是all:表明的的检索是全表扫描

 

 

 

const:通过id查询,有索引查询很快  t1查询完之后作为一张临时表d1中只有一条记录,所以在查询就到了system级别

 

 eq_ref:比如员工表和部门表,员工表的的CEO属于的部门(总裁办)在员工表只出现一次,所以就是eq_ref

但是从部分表搜索总裁办这个唯一的部门需要全表扫描是All

 ref:通过非唯一性索引,可以返回很多行,比如下面通过col1(名字查询),可能返回很多行,所以type就是ref

 range:使用了范围查询,type就是range

 index:安索引查询

all:将全表查询一遍 效率最慢 type为all ,存在全表扫描,建议优化sql

 

(3)explain之possible_keys和key的介绍

他们两个决定了你是否使用大了索引,也用来判断索引是否失效,和在多个索引竞争的时候mysql最后到底用到了那个索引。

比如:t1表 可能有2个索引l理论上可能用到,但是最终用到的key索引是idx_t1  

 

 理论上possible_keys没有用到,实际key也没有用到

 

这里查询显示理论上没有用到索引,但是实际上用到了索引

 (4)explain之key_len介绍

查询的使用使用的索引条件越多key_len越大 

 

 

 

 

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

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

相关文章

家宽用户家庭网的主要质量问题是什么?原因有哪些

1 引言 截至2020年底,我国家庭宽带(以下简称“家宽”)普及率已达到96%。经过一年多的发展,当前,家庭宽带的市场空间已经饱和。运营商在家宽市场的竞争也随之从新增用户数的竞争转移到家宽品质的竞争。 早期运营商的家…

软件测试收费标准

软件测试 软件测试收费主要根据工作量进行评估,主流的评估方式有以下两种 一、按照工作量评估 工作量从以下4个方面体现: 1、功能性 功能点数量正相关,功能复杂程度正相关例如一个算法逻辑相对复杂的功能点对应需要设计的用例会更多。 2、…

【PyQt】下载文件时弹出提示用户选择保存文件位置的对话框

1 需求 在界面软件中,用户点击下载某个文件,此时软件需要提示用户选择保存到电脑的某个位置,然后软件才能将文件保存到用户指定的电脑文件夹中。 2 代码 # 需引入的库 import os import sys from PyQt5.QtWidgets import QFileDialogsrc .…

复数基本概念

复数是为了解决无法对负数开根号的问题,其为实数的延伸: 复数表示为: a b i abi abi 其中 a 、b 为实数,i 为虚数单位,且 i 2 − 1 i^2 -1 i2−1。实数 a 称为虚数的实部,b 称为虚数的虚部&#xff…

【韩顺平 零基础30天学会Java】数组、排序和查找(2days)

数组、排序、查找和多维数组 数组可以存放多个同一类型的数据。数组也是一种数据类 型,是引用数据类型。 定义一个数组 double[] hens {3,5,1,3.4,2,50} 遍历数组得到数组所有元素的和 hens[下标],下标是从0开始编号的。 可以通过数组名.lenght得到数组…

爬取boss直聘简单案例

前提准备 以chrome自动化为例 下载浏览器驱动 最新版本:Chrome for Testing availability (googlechromelabs.github.io) 旧版本:ChromeDriver - WebDriver for Chrome - Downloads (chromium.org) 查看chrome的版本 设置->关于chrome 如图116版本…

React 如何获取上一次 state 的值

React 如何获取上一次 state 的值 一、用 ref 存储上一次的 state 类似 usePrevious function usePrevious(value) {const ref useRef();useEffect(() > {ref.current value;});return ref.current; }二、通过 setState 的入参改为函数获取

Nginx详解 第二部分:Nginx配置文件详解(附详细配置实例)

Part2 一、Nginx配置文件1.1 主配置文件详解1.2 子配置文件 二、全局配置部分2.1 修改启动的工作进程数(worker process) 优化2.2 cpu与worker process绑定(优化三)2.3 PID 路径修改 优化2.4 修改工作进程的优先级 优化2.7 调试工作进程打开的文件的个数…

专题:平面、空间直线参数方程下的切线斜率问题

本文研究平面、空间直线在参数方程形式下,切线斜率(即导数)如何表示的问题。 如上图所示。 设 y f ( x ) , x φ ( t ) , y ψ ( t ) 当 t t 0 时, x x 0 , y y 0 ,即点 A 坐…

拼多多开放平台的API接口可以获取拼多多电商数据。以下是API接口流程

使用拼多多开放平台的API接口可以获取拼多多电商数据。以下是一般的API接口流程: 1. 注册开发者账号:首先,您需要在拼多多开放平台注册一个开发者账号。通过开发者账号,您可以获得API密钥和其他必要的信息。 2. 鉴权与认证&…

最详细的Django安装与启动

Django安装与配置 Python支持版本: Django 3.2支持的Python版本为3.6、3.7、3.8和3.9,而Django 4.1只支持Python 3.8、3.9和3.10。 因为考虑到新的python版本更新和新的mysql数据库版本,由此使用 python3.8和Django 4.1和MYSQL8.0 Django…

计算机网络-笔记-第二章-物理层

目录 二、第二章——物理层 1、物理层的基本概念 2、物理层下面的传输媒体 (1)光纤、同轴电缆、双绞线、电力线【导引型】 (2)无线电波、微波、红外线、可见光【非导引型】 (3)无线电【频谱的使用】 …

统计学补充概念-17-线性决策边界

概念 线性决策边界是一个用于分类问题的线性超平面,可以将不同类别的样本分开。在二维空间中,线性决策边界是一条直线,将两个不同类别的样本分隔开来。对于更高维的数据,决策边界可能是一个超平面。 线性决策边界的一般形式可以表…

如何查看友商的Camera配流情况

有时候,我们想看下竞品友商机器上,使用到camera的app 申请的分辨率情况。 如果只是抓logcat日志,我们可能没法从中获取到有效信息,毕竟一般出货的机器版本,基本已经把大部分相关日志都给关闭了。 那有没其它方式&…

画出你的数据故事:Python中Matplotlib使用从基础到高级

摘要: Matplotlib是Python中广泛使用的数据可视化库,它提供了丰富的绘图功能,用于创建各种类型的图表和图形。本文将从入门到精通,详细介绍Matplotlib的使用方法,通过代码示例和中文注释,帮助您掌握如何在不…

java练习8.100m小球落地

题目: 如一个小球从100米高度自由落下,每次落地后就反跳回原高度的一半。 那么求它在第10次落地时,共经过多少米?第10次反弹多高? public static void main(String[] args) {/*假如一个小球从100米高度自由落下,每次落…

CAS相关知识

CAS(比较并交换),它是一条CPU并发原语,它的功能是判断内存中某个位置的值是否和期望值一致,如果一致的话就去更该为新的值,这个过程是原子的。 Unsafe类中的compareAndSwapInt方法,是native方法…

五种重要的 AI 编程语言

推荐:使用 NSDT场景编辑器 助你快速搭建3D应用场景 简而言之:决定从哪种语言开始可能会令人生畏。 不用担心!本文将解释 AI 中使用的最流行编程语言背后的基础知识,并帮助您决定首先学习哪种语言。对于每种语言,我们将…

如何通过开源项目学习编程?

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

[LitCTF 2023]Flag点击就送!

进入环境后是一个输入框,可以提交名字 然后就可以点击获取flag,结果回显提示,需要获取管理员 可以尝试将名字改为admin 触发报错,说明可能存在其他的验证是否为管理员的方式 通过抓包后,在cookie字段发现了 特殊的东西…