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

sql优化思路

 sql的优化经验


f36154b05e254b229329d19ea8e1f36b.png

这里解释一下SQL语句的优化的原理

1.指明字段名称,可以尽量使用覆盖索引,避免回表查询,因此可以提高效率

2.字面意思,无需过多赘述。索引就是为了提高查询效率的。

3.图中两条sql直接可以使用union all 或者 union连接。使用union all 的话,就会把两条sql所有符合条件的查询结果直接合并。使用union的话,就会多一步过滤,过滤掉二者的重复项。效率相对较低。

4.避免在where子句使用对字段进行表达式操作,这也是因为可能会造成索引失效。如:1.7中索引失效的第三种情况

5.如下图,这里有两个循环。循环三次的可以看作小表,循环1000次的看作大表。

小表放外面,MySql只需要连接三次数据库,然后在里面执行1000次操作。

而把大表放外面,就相当于要连接1000次数据库!每次执行三次操作。 

而使用内连接,就会优先把小表放外面,大表放里面。而左右连接并不会改变顺序(因为编写sql的时候就已经确定了两个表的位置了)。因此优先使用内连接。

6a0e994a8e9949318bb29485e53f39c4.png

1eff076b6a42492b95371a8c7bb6f61b.png

当有写操作进来的时候,就会走Master数据库,进行写操作,然后Master数据库再把数据同步到Slave数据库。

当有读操作进来的时候,就直接走Slave进行查询。

从而实现读写分离。

01d9093529314a91bcd92f0b101a7820.png

http://www.lryc.cn/news/342158.html

相关文章:

  • gin学习1-7
  • likeshop多商户单商户商城_likeshop跑腿源码_likeshop物品租赁系统开源版怎么配置小程序对接?
  • (done) LSTM 详解 (包括它为什么能缓解梯度消失)
  • springboot使用研究
  • 老旧房屋用电线路故障引起的电气火灾预防对策​
  • OpenAI发布GPT-4.0使用指南
  • 【WEEK11】学习目标及总结【Spring Boot】【中文版】
  • Unity 性能优化之图片优化(八)
  • C++类细节,面试题02
  • Stylus的引入
  • 前端框架-echarts
  • 【StarRocks系列】 Trino 方言支持
  • 【2024最新华为OD-C卷试题汇总】URL拼接 (100分) - 三语言AC题解(Python/Java/Cpp)
  • 【ARM 嵌入式 C 字符串系列 23.7 -- C 实现函数 isdigit 和 isxdigit】
  • 三分钟了解计算机网络核心概念-数据链路层和物理层
  • 数据结构===堆
  • AAA、RADIUS、TACACS、Diameter协议介绍
  • Nacos高频面试题及参考答案(2万字长文)
  • CMakeLists.txt语法规则:条件判断中表达式说明四
  • Hive概述
  • buuctf-misc-33.[BJDCTF2020]藏藏藏1
  • golang 基础知识细节回顾
  • 递归陷阱七例
  • 【3D基础】坐标转换——地理坐标投影到平面
  • 颈椎锻炼方式
  • 测试环境搭建:JDK+Tomcat+Mysql+Redis
  • (delphi11最新学习资料) Object Pascal 学习笔记---第11章第1节(混合引用中的错误)
  • 代码随想录算法训练营第三天 | 链表理论基础,203.移除链表元素,707.设计链表,206.反转链表
  • 如何利用仪表构造InfiniBand流量在数据中心测试中的应用
  • Kubernetes 文档 / 概念 / Kubernetes 架构 / 节点