做了下实验
表结构如下
select a
from truck
where b = '0';
结果如图
可以看到是先判断的field list
那这样不就和执行顺序相违背了?
这里想问一下,这里的判断是属于 SELECT
还是FROM
1
love2020 2021-02-05 16:20:25 +08:00
sql 执行流程中,有一步是 sql 解析,判断 sql 语法是否正确、字段是否正确。 你所说的顺序是执行 sql 的时候,肯定先 from 获取数据源,然后条件获取数据,最后在 select 。
你要理解一条 sql 执行的流程是很多步的。建立链接、缓存、分析、优化、执行 --最后才到存储引擎。 |
2
love2020 2021-02-05 16:21:07 +08:00
你给的顺序的 sql 语法顺序而已。
|
3
uselessVisitor OP @love2020 十分感谢
|