(1)sql语句的完整语法:
select 字段列表 from 表名列表 where 条件列表 group by 分组字段 having 分组后的条件 order by 排序 limit 分页限定;
注:where和having的区别
- where是在分组之前进行限定,不满足条件的数据不参与分组;having是在分组之后进行限定,不满足条件则不返回相应的结果
- where不可以使用聚合函数,但是having可以是用聚合函数,如SUM、MAX、MIN、COUNT等
案例:
SELECT sex,AVG(math),COUNT(id) FROM student WHERE math>70 GROUP BY sex HAVING COUNT(id)>2;
返回数学成绩大于70,按照性别分组的学生数量大于2的性别、平均成绩及数量的结果
(2)当如下的sql语句同时出现时,sql关键词的执行顺序:
from ... where ... group by ... having ... select ... rownum ... order by