分布式事务数据库 —-MySQL 数据库开发规范(第五节)

5.1 简化查询语句**
5.1.1 去掉不必要的子查询
SELECT * FROM (SELECT column1,column2 FROM table_name WHERE column1=xx) limit 10;
修改成
SELECT column1,column2 FROM table_name WHERE column1=xx LIMIT 10;
5.1.2 去掉不必要的括号
((a AND b) AND c OR (((a AND b) AND (c AND d))))
修改成
(a AND b AND c) OR (a AND b AND c AND d)
示例:
在这里插入图片描述
5.1.3 去掉重叠常量
示例:
(a<b AND b=c) AND a=100
修改成 b>100 AND b=c AND a=100
5.1.4 因常量重叠而去除部分常量条件
示例:
(B>=100 AND B=100) OR (B=200 AND 100=100) OR (B=300 AND 100=200)
修改成 B=100 OR B=200
5.1.5 去掉无意义的筛选条件
示例:
1=1,2>1,1<2 等
修改成 这些无意义的筛选条件可以直接从 WHERE 子句中去掉。
5.1.6 多使用等值操作,少使用非等值操作
WHERE条件中的非等值条件(IN、BETWEEN、<、<=、>、>=)会导致后面的条件使用不
了索引,因为不能同时用到两个范围条件。

猜你喜欢

转载自blog.csdn.net/weixin_44994688/article/details/90082081