- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试计算 4 个表中每个学生的 GPA:
Student(STUDENT_ID, STUDENT_LNAME, STUDENT_FNAME, MAJOR)
Course(COURSE_NO, COURSE_NAME, DEPT_CODE, CREDITS)
Grade(COURSE_NO, STUDENT_ID, GRADE)
Grade-point(GRADE, POINTS)
这是我写的代码:
SELECT S.STUDENT_ID, S.STUDENT_LNAME, S.STUDENT_FNAME,
SUM(C.CREDITS*P.POINTS)/SUM(C.CREDITS) AS GPA
FROM GRADE_POINT P, STUDENT S, COURSE C, GRADE G
WHERE S.STUDENT_ID=G.STUDENT_ID
AND C.COURSE_NO=G.COURSE_NO
AND G.GRADE=P.GRADE
GROUP BY S.STUDENT_ID, S.STUDENT_LNAME, S.STUDENT_FNAME, GPA;
我还没有学过 CREATE PROCEDURE 查询,因此我不应该在这个级别使用它。但是,代码不起作用。它说 GPA 是一个无效的标识符。老实说,我不知道这是怎么回事。我还尝试为变量删除尽可能多的函数,如下所示:
SELECT S.STUDENT_ID, S.STUDENT_LNAME, S.STUDENT_FNAME, (C.CREDITS*P.POINTS) AS
TOT_CR_PT, SUM(C.CREDITS) AS TOT_CREDIT, (TOT_CR_PT/TOT_CREDIT) AS GPA
但是GPA问题依然存在。有什么问题,我该如何解决?
最佳答案
您不希望按 GPA 进行分组,因为这是您为 SUM()
聚合提供的别名,您已将其应用于已分组的集合 (学生)。只需将其从 GROUP BY
中删除:
SELECT S.STUDENT_ID, S.STUDENT_LNAME, S.STUDENT_FNAME,
SUM(C.CREDITS*P.POINTS)/SUM(C.CREDITS) AS GPA
FROM GRADE_POINT P, STUDENT S, COURSE C, GRADE G
WHERE S.STUDENT_ID=G.STUDENT_ID
AND C.COURSE_NO=G.COURSE_NO
AND G.GRADE=P.GRADE
GROUP BY S.STUDENT_ID, S.STUDENT_LNAME, S.STUDENT_FNAME;
另一点可能会让您得分的是使用 JOIN
而不是(ab)使用 WHERE 子句(最新版本的 Oracle 确实支持此语法):
FROM STUDENT S
INNER JOIN GRADE G
ON S.STUDENT_ID=G.STUDENT_ID
...
关于sql - 使用SQL计算GPA,报 "Invalid Identifier"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23524509/
我是 Java 新手,我遇到了这个我无法解决的问题。我继承了这个项目,并且我的 scriptlet 之一中有以下代码: DefaultLogger.logMessage("DEBUG path: "+
在做web应用的自动化测试时,定位元素是必不可少的,这个过程经常会碰到定位不到元素的情况(报selenium.common.exceptions.NoSuchElementException),一般
我之前已经这样做过,但令我惊讶的是 CListCtrl 不会以颜色显示文本。我在对话框上有 ListView 控件。我正在使用 VS2010,是否还缺少其他东西? void CGameView::On
我正在尝试计算 4 个表中每个学生的 GPA: Student(STUDENT_ID, STUDENT_LNAME, STUDENT_FNAME, MAJOR) Course(COURSE_NO, C
当我在 windows 和 mac 上使用 jasper 报告时它工作正常,当我将我的应用程序部署到 linux 机器 并尝试生成它抛出的报告时 net.sf.jasperreports.engine
我正在构建 iOS 应用并尝试实现应用内购买(非消费品)。 所有 bundle ID 等都已设置并正常工作,当我获取 Apple Store 服务器时,我可以看到我的产品有效。但是,在测试时,我在 p
我正在尝试使用非固定字符数组读取用户输入,但当我在键盘上输入内容时它只是软崩溃(没有崩溃窗口)。当我在在线 C 编译器上运行它时,它说 Segmentation fault (core dumped)
事实: 无根 podman 非常适合 uid 1480 无根 podman 为 uid 2088 失败 中央操作系统 7 内核 3.10.0-1062.1.2.el7.x86_64 podman 版本
根据 homebrew-brew 官方的解释得知,MongoDB 不再是开源的了,并且已经从 Homebrew中移除 #43770 正是由于 MongoDB 的商业化不太理想,所以它选择了闭源。所
我用命令禁用collectstatic heroku config:set DISABLE_COLLECTSTATIC=1 成功将我的项目推送到 Heroku 后,手动 collectstatic 如
代码如下: public class TryStuffOutHere { public static void main(String[] args) {
我已经设置了我的 redis 服务器,以便 CONFIG GET dir --> "/var/lib/redis" 和 CONFIG GET dbfilename --> "redis.rdb". 但
我是一名优秀的程序员,十分优秀!