SELECT语句的完整结构
# SQL92语法:
SELECT ..., ..., ...(存在聚合函数)
FROM ..., ..., ...
WHERE 多表的连接条件 AND 不包含聚合函数的筛选条件
GROUP BY ..., ...
HAVING 包含聚合函数的过滤条件
ORDER BY ..., ...(ASC / DESC)
LIMIT ..., ...
# SQL99语法:
SELECT ..., ..., ...(存在聚合函数)
FROM ...(LEFT / RIGHT) JOIN ... ON 多表的连接条件
(LEFT / RIGHT) JOIN ... ON ...
WHERE 不包含聚合函数的筛选条件
GROUP BY ..., ...
HAVING 包含聚合函数的过滤条件
ORDER BY ..., ...(ASC / DESC)
LIMIT ..., ...
SQL语句的执行过程
FROM ..., ... -> ON -> (LEFT/RIGHT JOIN) -> WHERE -> GROUP BY
-> HAVING -> SELECT -> DISTINCT -> ORDER BY -> LIMIT