21、查询不同老师所教不同课程平均分从高到低显示

以课程为主题:两表联合,以课程分组,求平均值(假如不同的老师教同一门课,这种情况不予考虑)

select a.c_id '课程号',b.c_name '课程名', avg(a.s_score) '平均分'
from score as a
inner JOIN course as b
on a.c_id = b.c_id
group by a.c_id
order by avg(a.s_score) desc


以老师为主题

  • 需要三表联合,老师进行分组。再次考虑平均分
select t.t_id,t.t_name,c.c_name,avg(s.s_score)
from teacher as t
inner join course as c
on t.t_id = c.c_id inner join score as s
on c.c_id = s.c_id
group by t.t_id
order by avg(s.s_score) desc

23、使用分段[100,85),[85,70),[70,60),[<60] 来统计各科成绩,分别统计各分数段人数:课程ID和课程名称

  • 对课程号分组,使用case when来判断
select s.c_id '课程号' ,c.c_name '课程名称',
sum(case when s.s_score <= 100 and s.s_score > 85 then 1 else 0 End) as '[100,85)',
count(case when s.s_score <= 85 and s.s_score > 70 then 1 else NULL End) as '[85,70)',
sum(case when s.s_score <= 70 and s.s_score > 60 then 1 else 0 End) as '[70,60)',
sum(case when s.s_score < 60 then 1 else 0 End) as '[< 60)'
from score as s
INNER JOIN course as c
on s.c_id = c.c_id
group by c.c_id


24、查询学生平均成绩及其名次

select st.s_id,st.s_name,avg(s.s_score),row_number() OVER(order by avg(s.s_score) desc)
from
student as st
inner JOIN score as s
on st.s_id = s.s_id
group by st.s_id

老铁关注一波我的公众号:主要写一些全栈开发相关的知识和面试题

最新文章

  1. ASP.NET SignalR入门
  2. 用CMake设置Visual Studio工程中第三方库
  3. web进阶之jQuery操作DOM元素&amp;&amp;MySQL记录操作&amp;&amp;PHP面向对象学习笔记
  4. 【编程题目】输出 1 到最大的 N 位数
  5. C语言回顾-函数和位运算
  6. Linux操作系统奥秘01-系统引导(MBR - 硬盘的0磁道)
  7. android手机配置hosts文件
  8. Flash cs6 如何从FLA 文件导出sound文件
  9. Js 实现 C# Format方法
  10. Linux系统学习笔记:文件描述符标志
  11. angular.js简介
  12. VUE2.0实现购物车和地址选配功能学习第三节
  13. Python爬虫:用BeautifulSoup进行NBA数据爬取
  14. 外部 Storage Provider - 每天5分钟玩转 Docker 容器技术(149)
  15. React引领未来用户界面——心莱科技内部直播分享会
  16. 吴恩达机器学习笔记43-SVM大边界分类背后的数学(Mathematics Behind Large Margin Classification of SVM)
  17. Confluence 6 &quot;net.sf.hibernate.PropertyValueException: not-null&quot; 相关问题解决
  18. centos7安装Apache
  19. 运维利器万能的 strace
  20. oracle(三) SQL语句

热门文章

  1. MySQL之COUNT(*)性能到底如何?
  2. 故障案例 | lsof是怎么&quot;影响&quot;MySQL计算打开文件句柄数的
  3. Luogu4408 [NOI2003]逃学的小孩 (树的直径)
  4. ShardingSphere-JDBC实战
  5. kafka详解(一)--kafka是什么及怎么用
  6. 跟我学Python图像处理丨何为图像的灰度非线性变换
  7. 【设计模式】Java设计模式 -工厂模式
  8. Mac_VM_CentOS固定IP总结
  9. android 逆向 smali手写helloworld
  10. ViewBinding 与 Kotlin 委托双剑合璧