這是我的sql代碼,有誰能幫我一個忙嗎?ORACLE:我的sql有什麼問題?編譯後爲什麼不能給我一筆總價值?
CREATE VIEW "UOS_VU_STUDENT_AVERAGE" ("Fullname", "Average score") AS
SELECT
G.TITLE_NAME||' '||A.FIRST_NAME||' '||A.LAST_NAME AS "Fullname",
SUM (C.GRADE)/(SUM(F.CREDITS)/10) AS "Average score"
from
STUDENT A,
COURSE B,
STUDENT_MODULE C,
STUDENT_SESSION D,
STATUS_LOOK_UP E,
MODULE F,
TITLE_LOOK_UP G
where
B.COURSE_TITLE = 'Information Management' AND
D.COURSE_LEVEL = '1' AND
D.STATUS_ID = '1' AND
B.COURSE_ID = A.COURSE_ID AND
A.STUDENT_ID = D.STUDENT_ID AND
D.STUDENT_ID = C.STUDENT_ID AND
D.ACADEMIC_YEAR_ID = C.ACADEMIC_YEAR_ID AND
C.MODULE_CODE = F.MODULE_CODE AND
A.TITLE_ID = G.TITLE_ID
GROUP BY
G.TITLE_NAME,
A.FIRST_NAME,
A.LAST_NAME,
C.GRADE,
C.MODULE_CODE,
F.CREDITS
ORDER BY LAST_NAME
理想的情況下,它應該顯示我只是一個單行包括大衛史密斯先生的他的名字的平均得分,但我已經有了不同。
但我得到的是他在1級
不知道所有的成績(分數)的列表,我把它錯了...希望有人能夠幫助我。非常感謝。
嘗試從您的Group By中取出最後三列。 –
STATUS_LOOK_UP不是您的where子句的一部分,您確定需要它嗎?你知道sql中有一個AVG函數嗎?你的小組似乎不太對,但我在工作我無法測試你的代碼 – loli