Sql 创建具有总和值的视图

Sql 创建具有总和值的视图,sql,oracle,Sql,Oracle,我不知道如何处理这个问题,我想创建一个视图 列为金融专业学生的全名、StudentID、HoursPassed、HoursFailed和HoursPassed+HoursFailed 但我的列标题必须是全名、StudentID、HoursPassed、hoursfiled和HoursAttempted 到目前为止,我已经: CREATE VIEW A5T7 AS SELECT (firstname || ' ' || lastname) AS "FullName", StudentID, Hou

我不知道如何处理这个问题,我想创建一个视图

列为金融专业学生的全名、StudentID、HoursPassed、HoursFailed和HoursPassed+HoursFailed

但我的列标题必须是全名、StudentID、HoursPassed、hoursfiled和HoursAttempted

到目前为止,我已经:

CREATE VIEW A5T7 AS
SELECT (firstname || ' ' || lastname) AS "FullName", StudentID, HoursPassed, HoursFailed, 
SUM (HoursPassed,HoursFailed) AS "HoursAttempted",
FROM A5
WHERE Upper(Major1)='FIN'OR Upper(Major2)='FIN'
GROUP BY ???
ORDER BY HoursAttempted;
我很肯定我的问题在某个地方是错的。我只是不知道如何接近标题名和总和。而且我的组员似乎也不对

我需要五列,还需要SUM函数来添加最后一列

SUM()
只接受一个参数。因此,您可以尝试以下方法:

CREATE VIEW A5T7 AS
    SELECT (firstname || ' ' || lastname) AS FullName,
           StudentID, HoursPassed, HoursFailed, 
           SUM(HoursPassed + HoursFailed) AS HoursAttempted
    FROM A5
    GROUP BY Upper(Major1) = 'FIN' AND Upper(Major2) = 'FIN'
    ORDER BY HoursAttempted;
编辑:

上述操作不起作用,因为
GROUPBY
子句实际上是一个
where
子句。我想你的意思是:

CREATE VIEW A5T7 AS
    SELECT (firstname || ' ' || lastname) AS FullName,
           StudentID,  
           SUM(HoursPassed + HoursFailed) AS HoursAttempted
    FROM A5
    WHERE Upper(Major1) = 'FIN' AND Upper(Major2) = 'FIN'
    GROUP BY firstname, lastname, StudentId
    ORDER BY HoursAttempted;

是一个SQL小提琴。

名称是A5抱歉。。。它看起来像是ASI尝试了你所说的,它给了我一个错误SQL错误:ORA-00933:SQL命令未正确结束00933。00000-“SQL命令未正确结束”我实际上更改了Upper(Major1)=“FIN”或Upper(Major2)=“FIN”的位置,但GroupBy限制了我的列。。。我需要那五个全名,学生ID,小时通过,小时失败和HoursAttempted@AnaMar . . . 如果删除
分组依据
,请删除
sum()
。我想我无法删除分组依据,因为我有所需的sum函数。我如何分组以保留5列请编辑您的问题并提供示例数据和所需结果。我这样做了,我意识到我必须将分组按更改为Where和include OR,但它仍然不允许我创建@GordonLinoff表