order by 与 group by 区别
order by 排序查询、asc升序、desc降序
示例:
select * from 学生表 order by 年龄
---查询学生表信息、按年龄的升序(默认、可缺省、从低到高)排列显示 也可以多条件排序、 比如 order by 年龄,成绩 desc 按年龄升序排列后、再按成绩降序排列
group by 分组查询、
having 只能用于group by子句、作用于组内,having条件子句可以直接跟函数表达式。使用group by 子句的查询语句需要使用聚合函数。
示例:
select 学号,SUM(成绩) from 选课表 group by 学号 按学号分组、查询每个学号的总成绩
select 学号,AVG(成绩) from 选课表 group by 学号 having AVG(成绩)>(select AVG(成绩) from 选课表 where 课程号='001') order by AVG(成绩) desc
----查询平均成绩大于001课程平均成绩的学号、并按平均成绩的降序排列