书写顺序
SELECT -> DISTINCT -> FROM -> JOIN -> ON -> WHERE -> GROUP BY -> HAVING -> ORDER BY -> LIMIT
执行顺序
FROM -> JOIN -> ON -> WHERE -> GROUP BY -> HAVING -> SELECT -> DISTINCT -> ORDER BY -> LIMIT
执行顺序解释
1.from 要做数据分析,得先有个表
2.join 一个表可能还不够,两个表甚至多个表都可以,关联条件啥也先不用,可以都来个笛卡儿积先
3.on 在诸多表左右连接后,设定两个表之间的关联键,把不符合条件的全部筛掉
4.where 上三步整合各表,形成一个统一大表;在此大表上,设置筛选条件
5.group by 把指定字段相同的行组合在一起,其余没有加入group by的字段,可以用聚合函数如max/min等合并
6.having 在group by了之后,再度指定筛选条件;注意where和having是不同的,主要在于中间多了group by
7.select 在行层面的处理暂告一段落,在列层面再来一波
8.distinct 指定字段去重
9.order by 指定字段排序,升降序
10.limit 指定哪些行