完整的SELECT查询语句
SELECT DISTINCT column, AGG_FUNC(column_or_expression), …
FROM mytable
JOIN another_table
ON mytable.column = another_table.column
WHERE constraint_expression
GROUP BY column
HAVING constraint_expression
ORDER BY column ASC/DESC
LIMIT count OFFSET COUNT;
- FROM和JOINs 确定一个数据源表(或临时表)
- WHERE 对数据源进行筛选,所有的筛选col属性 只能来自FROM圈定的表. AS别名还不能在这个阶段使用,因为可能别名是一个还没执行的表达式
- GROUP BY 对之前的数据进行分组统计,这意味着,其它数据将在分组之后丢失。
- HAVING 对分组之后的数据进行筛选,AS别名不能在这个阶段使用。
- SELECT 确定结果之后,SELECT对结果col进行筛选或计算。
- DISTINCT 去重
- ORDER BY 对结果做排序,可以用AS别名。
- LIMIT/OFFSET 从结果截取