sql语句执行顺序问题
老师您好,我最近在写sql的时候,对sql执行顺序不是很明白,比如下面这行查询语句
select date_format(event_time, '%Y-%m') as month, sum(total_amount) as GVM from tb_order_overall where year(event_time) = 2021 and (status = 1 or status = 0) group by month having GVM > 100000 order by GVM
我在网上查了一下,sql语句的执行顺序是from -> where -> group by -> having -> select -> order by
我这里不太明白的是,因为 group by 和 having 语句是在select语句之前,但是 group by 和 having 语句里用了select中起的别名 month 和 GVM,我不知道为什么这个时候可以使用别名呢?如果按照执行过程,这时候应该表里还没有这个别名啊
麻烦老师解答一下了
7
收起
正在回答 回答被采纳积分+1
相似问题
登录后可查看更多问答,登录/注册
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星