求一条SQL语句:能一次计算出各科前10名学生的平均成绩。

求一条SQL语句:能一次计算出各科前10名学生的平均成绩。,第1张

select '语文' as 科目, avg(语文) as 平均成绩 from

(select top 10 语文 from 成绩表 order by 语文 desc) as x

union all

select '数学' as 科目, avg(数学) as 平均成绩 from

(select top 10 数学 from 成绩表 order by 数学 desc) as y

union all

select '英语' as 科目, avg(英语) as 平均成绩 from

(select top 10 英语 from 成绩表 order by 英语 desc) as z

如果还有其它科目,可以用同样的方式往后加。

select avg(语文) as 语文平均成绩 from (select top 10 * from 成绩表 order by 语文 desc)

select avg(数学) as 数学平均成绩 from (select top 10 * from 成绩表 order by 数学 desc)

select avg(英语) as 英语平均成绩 from (select top 10 * from 成绩表 order by 英语 desc)


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/9610930.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存