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

mysql 多表关联查询性能优化-同一sql不同的执行计划

一、问题背景

        相同的sql,不同的日期,执行的时间差异很大,执行计划不一样。执行快时,30ms左右。执行慢时,15s左右。

二、分析结论

1、经过分析,发现不同日期下,sql的执行计划不同,驱动表不同。sop作为驱动表时,执行速度快,sot作为驱动表时,执行速速慢。

2、驱动表确认原则,即小表原则。

3、如何确认大小表

        以sop和sot两个表的关联为例。在现有查询条件不表的情况下

a、仅针对sop表进行查询,保留关联查询中所有有关sop表的查询条件,分析单查sop表的执行计划,查看对应的rows值。4.11日的扫描数据是11768,5.11日的扫描数据是15056。

b、仅针对sot表进行查询,保留关联查询中所有有关sot表的查询条件,分析单查sot表的执行计划,查看对应的rows值。扫描的数据是固定的,都是13952。

        所以,4.11日关联查询,驱动表是sop。5.11日的关联查询,驱动表是sot。

三、解决方案

a、关联查询时,使用force index语法,强制指定索引

参考mysql多表查询,强制使用特定索引-CSDN博客

b、关联查询时,使用STRAIGHT_JOIN语法,强制指定驱动表

参考【性能提升神器】STRAIGHT_JOIN,指定驱动表-CSDN博客

相关文章:

  • 最近最少使用缓存
  • dify:开源 LLMOps平台。
  • Android Retrofit 封装模版
  • 物体检测算法-R-CNN,SSD,YOLO
  • 苍穹外卖①
  • Unity数据持久化2——XML
  • JavaScript 中的变量声明方式及其应用场景
  • MySQL学习之DQL语句(数据查询语言)
  • MySQL——表的约束
  • 使用Flask ORM进行数据库操作的技术指南
  • 卷积神经网络(CNN)详细介绍及其原理详解
  • 力扣279. 完全平方数
  • 赶紧收藏!2024 年最常见 20道 Redis面试题(四)
  • 《Python编程从入门到实践》day37
  • 小林coding笔记
  • 【162天】黑马程序员27天视频学习笔记【Day02-上】
  • 【391天】每日项目总结系列128(2018.03.03)
  • 【comparator, comparable】小总结
  • 2017前端实习生面试总结
  • Codepen 每日精选(2018-3-25)
  • Computed property XXX was assigned to but it has no setter
  • CSS进阶篇--用CSS开启硬件加速来提高网站性能
  • ES6, React, Redux, Webpack写的一个爬 GitHub 的网页
  • go append函数以及写入
  • IndexedDB
  • Javascript 原型链
  • JS创建对象模式及其对象原型链探究(一):Object模式
  • Linux下的乱码问题
  • nginx 负载服务器优化
  • SegmentFault 社区上线小程序开发频道,助力小程序开发者生态
  • tensorflow学习笔记3——MNIST应用篇
  • vue-cli在webpack的配置文件探究
  • 读懂package.json -- 依赖管理
  • 高性能JavaScript阅读简记(三)
  • 关于Android中设置闹钟的相对比较完善的解决方案
  • 数组的操作
  • 用quicker-worker.js轻松跑一个大数据遍历
  • 云大使推广中的常见热门问题
  • 【运维趟坑回忆录】vpc迁移 - 吃螃蟹之路
  • ​软考-高级-信息系统项目管理师教程 第四版【第19章-配置与变更管理-思维导图】​
  • (26)4.7 字符函数和字符串函数
  • (CPU/GPU)粒子继承贴图颜色发射
  • (C语言)输入自定义个数的整数,打印出最大值和最小值
  • (第8天)保姆级 PL/SQL Developer 安装与配置
  • (附源码)php新闻发布平台 毕业设计 141646
  • (原創) 人會胖會瘦,都是自我要求的結果 (日記)
  • (转) Android中ViewStub组件使用
  • ****** 二十三 ******、软设笔记【数据库】-数据操作-常用关系操作、关系运算
  • .[backups@airmail.cc].faust勒索病毒的最新威胁:如何恢复您的数据?
  • .NET Core使用NPOI导出复杂,美观的Excel详解
  • .NET IoC 容器(三)Autofac
  • .net安装_还在用第三方安装.NET?Win10自带.NET3.5安装
  • .net下的富文本编辑器FCKeditor的配置方法
  • /var/lib/dpkg/lock 锁定问题
  • @property python知乎_Python3基础之:property