MySQL(order by 与 group by的区别)

  1. 云栖社区>
  2. 博客>
  3. 正文

MySQL(order by 与 group by的区别)

lambdaλ 2018-10-10 10:21:00 浏览1330
展开阅读全文

order by(排序查询)

order by(排序查询),asc升序,desc降序(默认升序,可缺省)

  • 例(默认方式):
//查询所有信息按id升序排序
select * from 表名 order by id
  • 例(多条件排序方式):
//先按id升序排序,后按年龄降序排序
select * from 表名 order by id,age desc

group by(分组查询)

having只能用于group by子句,作用于组内,having条件子句可以直接跟函数表达式,使用group by子句的查询语句需要使用聚合函数

  • 例:
//按照学号分组,查询每个学号的总成绩
select 学号,SUM(成绩) from 选课表 group by 学号

//查询平均成绩大于001课程平均成绩的学号,并按平均成绩降序排序
select 学号,AVG(成绩) from 选课表
group by 学号
having AVG(成绩)>(select AVG(成绩) from 选课表 where 课程号="001")
order by AVG(成绩) desc 

网友评论

登录后评论
0/500
评论
lambdaλ
+ 关注