找回密码
 立即注册
首页 业界区 安全 mysql 语句优化优化

mysql 语句优化优化

孟清妍 2025-6-1 20:37:57
前言

我们都会写很多语句,那么如何让语句看起来更加优美呢?
正文


  • 移除不必要的括号
((a = 5 AND b = c) OR ((a > c) AND (c < 5)))
=
(a = 5 and b = c) OR (a > c AND c < 5)

  • 常量传递
a = 5 AND b > a
可以换成a = 5 AND b > 5
但是or 不行。
比如说:
  1. a = 5 or b > a
  2. !=
  3. a = 5 or b > 5
复制代码
这里面不行,因为or 是两者之间一个条件满足就可以,b>a != b>5,因为前置条件a = 5不一定为真

  • 等值传递
a = b and b = c and c = 5
=
a=5 and b =5 and c = 5

  • 移除没用的条件
(a < 1 and b = b) OR (a = 6 OR 5 != 5)
= a < 1 OR a = 6
比如b = b 和 5 != 5 一定为true

  • 表达式计算
a = 5 + 1

a = 6
这个可能优化器自动帮忙优化啥的。
但是下面这种事不会帮忙优化的:
ABS(a) > 5

-a 5 可以这样写  a>5 or a
您需要登录后才可以回帖 登录 | 立即注册