sql - 在学生成绩列表中返回平均值的 Oracle 程序
问题描述
我有两张桌子:
主题
STDID SUBJID SEMESTER_YEAR GRADE FREQ STATUS
1111 2 2/2018 6 75 ok
1111 13 2/2018 7 100 ok
1111 4 1/2018 5 90 ok
1111 7 1/2018 10 95 ok
1111 9 2/2018 8 75 ok
1122 2 2/2017 3 75 no
1122 13 2/2017 5 100 ok
1122 4 1/2017 5 90 ok
1122 7 1/2017 10 95 ok
1122 9 2/2017 8 75 ok
1113 2 2/2018 6 75 ok
1113 13 2/2018 7 100 ok
1113 4 1/2018 5 90 ok
1113 7 1/2018 4 95 no
1113 9 2/2018 8 75 ok
1132 2 2/2018 3 75 no
1132 13 2/2018 7 100 ok
1132 4 1/2018 5 90 ok
1132 7 1/2018 4 95 no
1132 9 2/2018 8 75 ok
另一个:学生
STDID NAME DATA_NASC
1111 gabriel 12-APR-70
1112 pedro 12-JUN-70
1113 lucas 12-MAR-70
1114 mariana 12-FEB-70
1115 klemer 12-SEP-70
1116 jose 12-DEC-70
1117 vitor 12-NOV-70
1118 artur 12-APR-70
1119 bia 12-NOV-70
1120 julia 12-MAR-70
1121 rafaela 12-JAN-70
1122 augusto 12-FEB-70
1123 eneas 12-JUL-70
1124 zezinho 12-APR-70
1125 hugo 12-APR-70
1126 matheus 12-APR-70
1127 diana 12-APR-70
1128 andre 12-APR-70
1129 reco 12-APR-70
我正在尝试创建一个程序,在给定一个学期/年的情况下,对于该学期内的每个科目(SUBJID),输出学生 ID、学生姓名及其各自的成绩、频率和这些科目的状态。对于列出的每个科目,我还需要显示学生在该科目上的总体平均成绩
已经这样做了,但我被卡住了,希望有人可以帮助我完成程序和选择:
SELECT STUDENT.NAME
, SUBJECT.STDID
, SUBJECT.SUBJID
, SUBJECT.SEMESTER_YEAR
, AVG(SUBJECT.GRADE)
OVER (PARTITION BY SUBJECT.SUBJID) AS AVERAGE_GRADE_BY_SUBJ
FROM SUBJECT, STUDENT
WHERE SUBJECT.SEMESTER_YEAR = '1/2018'
AND SUBJECT.STDID = STUDENT.STDID
ORDER BY SUBJECT.SUBJID;
我需要的输出示例:
NAME STDID SUBJID SEMESTER_YEAR AVERAGE_GRADE_BY_SUBJ
gabriel 1111 4 1/2018 5
lucas 1113 4 1/2018 5
marcello 1132 4 1/2018 5
lucas 1113 7 1/2018 6,5
marcello 1132 7 1/2018 6,5
gabriel 1111 7 1/2018 6,5
解决方案
推荐阅读
- javascript - 为什么在将项目添加到列表之前显示无序列表的项目符号?
- flutter - 新设置的工作环境中的错误日志
- javascript - 带有 vue.js 格式问题的 Visual Studio 2019
- python - 向量化添加多个 pandas 列
- php - 在使用自动加载器 PSR-4 时使 PDO 连接在整个应用程序中可用
- ios - 如何处理 Firestore 查询结果以供以后使用
- css - safari 不垂直填充网格自动流:列
- javascript - addEventListener scroll Uncaught TypeError: element.getBoundingClientRect 不是函数
- redisearch - 在redisearch中搜索时我们可以指定不同的字段权重吗?
- java - 在eclipse中将现有的maven项目添加到Maven多模块项目中