MySQL数据库是我们常用的关系型数据库之一,对于MySQL,我们写的SQL语句大多包含以下部分:
select 字段
from 表
join 连接类型
on 连接字段
where 条件
group by 分组
having 含聚合函数操作
union 全连接
order by 排序
limit 分页
那么,上面的SQL字段,是按照什么顺序执行的呢?SQL语句的执行顺序,是我们必须要掌握的,这关乎到我们写的SQL语句时候的思路以及写的SQL语句是否正确。SQL语句执行顺序如下:
from
on
join
where
group by
having
select
union
order by
我们可以这么去记:
首先,基于哪个表执行SQL语句(from),这个表是怎么来的(on,join);
然后,以什么条件在确定的表里进行选择(where);
其次,通过where得到了数据,我们有没有什么其它操作(group by,having);
通过上面的操作,我们得到了一个临时表,然后我们从临时表中去选择(select),对选择后的结果去执行一些操作,如order by。