sql 解释顺序

from:全量数据,排序

where:数据过滤,生成新的虚表。我的主观上理解,where中的条件,若是涉及到join中的表,则会移动到相应的on条件中,减小后续生成的虚表大小。select

join:根据on中的条件,生成虚表(笛卡尔积)数据

group by:数据分组,生成新的虚表移动

having:过滤group by以后的数据,生成新的虚表di

select:计算各个列的值,生成新的虚表vi

distinct:去除重复,可能为列,可能为行join

order by:对结果进行排序,生成新的虚表,结果表生成

相关文章
相关标签/搜索