sort by 和 group by 的区别是什么?
答案:2 悬赏:20 手机版
解决时间 2021-01-28 07:50
- 提问者网友:鐵馬踏冰河
- 2021-01-27 22:01
sort by 和 group by 的区别是什么?
最佳答案
- 五星知识达人网友:玩世
- 2021-01-27 22:16
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课程平均成绩的学号、并按平均成绩的降序排列
示例:
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课程平均成绩的学号、并按平均成绩的降序排列
全部回答
- 1楼网友:行路难
- 2021-01-27 23:01
首先说明SQL句子里面,order by 必须在group by 后面。没有group by就不能用order by .第二。group by是对数据的分组,order by 是对分组后的数据进行排序、 group by 分组,后面跟的是列名, order by 排序,有升序(asc...
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯