MySql-一条查询SQL语句的执行

  你好! 感谢您花费几分钟的时间阅读本篇博客,本人写的是方便学习与记录,要是有错误的地方请您指出,感谢

1 缓存

  这个的缓存不是指Redis,或者Mybatis的缓存我们常见的缓存,其实MySQL自带了缓存模块,但是我们几乎从来没有用过他,甚至在MySQL8.0直接就给去掉了,所以一定有他的局限性,大家可以查阅一下,但是确实是存在的。如果开启的话,所以一个查询SQL先会查询缓存

2 解析

  我们没有使用缓存的话,就会跳过缓存的模块,那么接下来我们就应该通过MySQL解析器分析sql的语法与词法是否合乎规范,并且会按照Mysql的语法规则,根据SQL语句生成解析树
当我们解析完成之后,并不知道该sql查询的表名或者字段是否存在,所以MySQL种的预处理器会检查解析树表名与列名是否正确,之后得到一个新的解析树。

3 优化

  查询优化器的目的就是根据解析树生成不同的执行计划,然后选择一种最优的执行计划,MySQL 里面使用的是基于开销(cost)的优化器,那种执行计划开销最小,就用哪种。

4 执行存储引擎,返回结果

  得到一个执行计划之后,我们的sql语句是不是终于可以执行了,那么又又有新的问题了,执行计划是谁,在哪执行,谁去执行?
  数据库中的一个表,我们可以把他理解成一个Excel电子表格的形式,所以我们的表在存储数据的同时,还要组织数据的存储结构,这个结构就是我们的存储引擎决定的。
存储引擎我们要注意,是表的类型而非数据库的类型,一个数据库当中可以有多种表的存储引擎
如图,在设计表种我们可以修改表的存储引擎


然后我们通过执行存储引擎 ,获取数据,返回到客户端

MySql-一条查询SQL语句的执行相关推荐

  1. MySQL的基础架构以及一条查询sql语句的执行流程

    详细介绍了Mysql的基础架构以及一条查询sql的执行流程. 如果不想作为一个只能简单的写写sql工程师,而是想要深入的学习MySQL,那么我们有必要首先从宏观的角度来了解MySQL的整体架构,只有把 ...

  2. mysql 输出判断,mysql判断_mysql判断SQL语句是否执行成功的方法

    摘要 腾兴网为您分享:mysql判断SQL语句是否执行成功的方法,中国体育,智慧党建,月星家居,虚拟按键等软件知识,以及闪点卡密,proxycap,大众车联网,平顶山软件,人格测试,ok支付,美图秀秀 ...

  3. mysql多表查询sql语句怎么写_MySQL基本SQL语句之单表查询、多表查询和子查询

    一.简单查询: 基本语法: SELECT * FROM tb_name;查询全部 SELECT field1,field2 FROM tb_name; 投影 SELECT [DISTINCT] * F ...

  4. java 查询sql语句_java执行SQL语句实现查询的通用方法详解

    完成sql查询 并将查询结果放入vector容器,以便其他程序使用 /* * 执行sql查询语句 */ public static vector executequery(class clazz, s ...

  5. 一条查询SQL 语句是如何执行的?

    我们的程序或者工具要操作数据库,第一步要做什么事情? 跟数据库建立连接.

  6. MySQL 的分页查询 SQL 语句

    MySQL一般使用 LIMIT 实现分页.基本语句为: SELECT ... FROM ... WHERE ... ORDER BY ... LIMIT ... 在中小数据量的情况下,这样的SQL足够 ...

  7. Oracle与MySQL的分页查询sql语句格式

    Oracle Oracle使用rownum进行分页,rownum是从1开始的: select * from (select rownum as rn, a.* from table_name a wh ...

  8. hql取满足条件最新一条记录_MySql 之一条查询sql的执行过程

    每当我把一条查询sql语句写完了,并且执行完得到想要的结果.这时我就在想为什么我写这样的一条sql语句,就能给我查询出我想要的结果,为什么我写了update就能更新一条语句?它们的执行过程是什么样的? ...

  9. 一条更新SQL语句是如何执行的?

    前言 在上篇文章<一条查询SQL语句是如何执行的?> 介绍了一些常用组件,一般是经过连接器.分析器.优化器.执行器等功能模块,最后到达存储引擎.本文是介绍一条更新语句如何执行,还会介绍一写 ...

最新文章

  1. SQL中的Exist操作
  2. 【c#】Form调用百度地图api攻略及常见问题
  3. 【论文解读】CVPR 2021 当之无愧的最佳论文奖:GIRAFFE,一种可控图像合成方法...
  4. CentOS 7破解root密码
  5. 三菱plc编程实例3000_三菱入门PLC编程PLC系统程序包括哪些
  6. linux libasan.so,Address Sanitizer 用法
  7. 【操作系统】信号量的用法
  8. 基础算法 —— 调度问题 —— 多机并行调度问题
  9. MSP430开发笔记之五:硬件IO中断与IR红外接收
  10. 通过自定义View了解MeasureSpecMode
  11. Java习题练习:1299 String
  12. 有自学能力的人,赚钱极其简单—聚财云库
  13. 字符串统计(2017)
  14. CQI原理及CQI指标优化
  15. 《百度输入法》导致EXCEL 无法使用快捷键Ctrl+;插入日期
  16. 加拿大 oracle audio,来自加拿大的“简单”与“纯粹”——Verity Audio Otello座地式扬声器...
  17. ntoskrnl.exe 占用80端口 apache 无法启动
  18. typescript使用可选属性报错可能未定义
  19. Python 中的 import 语句使用
  20. 网众无盘服务器 快车挂盘失败 显示 当前磁盘已经为超级工作站模式,网众快车...

热门文章

  1. 视频教学丨在【星图地球开发者平台】的管理后台可以做什么?
  2. 在【星图地球开发者平台】实现「仿真推演和「想定编辑」
  3. Unity之OpenXR+XR Interaction Toolkit实现 传送
  4. 美团点评技术专家孙佳林:万亿级实时全链路监控系统架构演进!
  5. Java创建文件夹并上传文件到该文件夹
  6. 滨州医学院做计算机作业的网站,滨州医学院教务网(点击进入)
  7. Druid连接池连接MySQL数据库
  8. [指导]Lenovo G50-70/G40-70笔记本clover安装引导黑苹果
  9. 移动端不同分辨率手机的适配问题
  10. ping命令简单介绍+用ping简单测网速