求一条sql

ldzyz007 2007-04-26 10:30:05
有一张表test(sid,sco,score)学号,课程号,成绩
现在要查询每门课程的平均成绩并降序排列
要是平均成绩相等的,则按照学号的升序排列

create table test(
sid int,
sco int,
score int,
)
go
insert into test values(1,1,90)
insert into test values(1,2,90)
insert into test values(1,3,90)
insert into test values(2,1,80)
insert into test values(2,1,80)
insert into test values(3,2,80)
go
...全文
194 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
ldzyz007 2007-04-26
  • 打赏
  • 举报
回复
对不起我的论述没有清楚

是这样的
如果平均成绩有相等的就按照id升序排序
如果不相等就按照平均成绩的降序排列

我是这样想的
if disctinct(平均成绩) order by 平均成绩 dese
else order by id
ankor 2007-04-26
  • 打赏
  • 举报
回复
select sid,sco,avg(score) from test group by sco ,sid order by avg(score) desc,sid
gahade 2007-04-26
  • 打赏
  • 举报
回复
select sco,avg(score) as '平均成绩' from test group by sco order by avg(score) desc

34,594

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧