更新时间:2024-01-12 GMT+08:00
子查询
- 禁止一条SQL语句中,出现重复子查询语句。
- 少用标量子查询。
标量子查询指结果为1个值,并且条件表达式为等值的子查询。
示例:不符合规范的语句
SELECT * FROM t1 WHERE id = (SELECT id FROM t2 LIMIT 1);
上述语句建议业务拆分为两条SQL语句,先执行子查询。
- 避免在SELECT目标列中使用子查询,可能导致计划无法下推影响执行性能。
- 子查询嵌套深度建议不超过2层。
由于子查询会带来临时表开销,过于复杂的查询应考虑从业务逻辑上进行优化。