我想计算其中一个部门的所有学生的总体平均GPA,这是我想出的但是它不起作用
COLUMN AVERAGE FORMAT 0.999
SELECT AVG(GPA) "AVERAGE"
FROM STUDENT
WHERE (YEAR < 4) AND
(MAJOR LIKE '%ACCT%') AND
(MAJOR LIKE '%FINA%') AND
(MAJOR LIKE '%MGMT%') AND
(MAJOR LIKE '%AISY%') AND
(MAJOR LIKE '%MINS%') AND
(MAJOR LIKE '%SCMS%');
所以他们应该都是本科生,并参加其中一个专业。
另外还有一个问题:是否可以使用“GROUP BY ###和HAVING ###”编写这样的查询?怎么做?
答案 0 :(得分:0)
这将为您提供所有年级<%的学生的平均分数。 4在以下一个专业中。我相信您的问题是使用AND
代替OR
进行专业。不太可能有一个专业的学生的名字与所有这些字符串相匹配。
SELECT AVG(GPA) AS "AVERAGE"
FROM STUDENT
WHERE (YEAR < 4)
AND
(
(MAJOR LIKE '%ACCT%') OR
(MAJOR LIKE '%FINA%') OR
(MAJOR LIKE '%MGMT%') OR
(MAJOR LIKE '%AISY%') OR
(MAJOR LIKE '%MINS%') OR
(MAJOR LIKE '%SCMS%')
)