人写的SQL的顺序和解析器解析的顺序是不一样的

人写的SQL:

机读的顺序:解析器

即先读from,select从第一位变成第7位。

 注意:所有条件(where或having后面的条件)都不能使用别名来判断,因为查询的时候是分先后顺序的,因为where和having条件在select之前执行。

不能写成下面这样的

 where是过滤分组前的数据,having是过滤分组后的数据。表现形式:where必须在group by之前,having是在group by之后。

原文地址:https://www.cnblogs.com/zwh0910/p/14700752.html