MySQL 关键字执行顺序:IN 和 UNION 在哪里?
mysql 关键字执行顺序解读
在理解 mysql 关键字的执行顺序时,我们通常看到以下排序:
FROM → ON → JOIN → WHERE → GROUP BY → HAVING → SELECT → DISTINCT → ORDER BY → LIMIT
但有人可能会疑惑,为什么 in 和 union 两个关键字没有出现在此顺序中?
in:where 子句的符号
in 实际上是 where 子句中的一个符号,与 between、= 和 like 等符号的作用类似。它用来表示条件,因此遵循 where 子句的执行顺序。
union:不影响执行计划
union 是一种组合两个或多个查询结果的关键字。它不在执行计划的顺序中,因为:
- 被 union 的每个查询都会独立解析和执行。
- union 仅仅将这两个查询的结果合并。
因此,in 和 union 没有参与到常规的关键字执行顺序中,而是在各自的特定上下文中执行。