최대 총 크레딧 포인트로 등록한 학생을 나열하는 쿼리를 작성하려고합니다.합계 쿼리 최대 값
SELECT s.S_ID,
s.S_LAST,
s.S_FIRST,
s."Total Credits"
FROM
(SELECT q2.S_ID,
q2.S_LAST,
q2.S_FIRST,
sum(q1.CREDITS) "Total Credits"
FROM
(SELECT COURSE_NO,
CREDITS
FROM COURSE) q1
JOIN
(SELECT s.S_ID,
s.S_LAST,
s.S_FIRST,
cs.COURSE_NO
FROM STUDENT s
JOIN ENROLLMENT e ON s.S_ID = e.S_ID
JOIN COURSE_SECTION cs ON e.C_SEC_ID = cs.C_SEC_ID) q2 ON q1.COURSE_NO = q2.COURSE_NO
GROUP BY q2.S_ID,
q2.S_LAST,
q2.S_FIRST) q3
GROUP BY s.S_ID,
s.S_LAST,
s.S_FIRST,
s."Total Credits"
WHERE "Total Credits" = max("Total Credits");
이 내가이 오류를 얻고 작동하지 않습니다 :
ORA-00933: SQL command not properly ended
00933. 00000 - "SQL command not properly ended"
*Cause:
*Action:
Error at Line: 23 Column: 1
어떤 도움을 이해할 수있을 것이다
여기 내 쿼리입니다.
당신의 외부 선택은 s''에서하지 q3''에서이고 절은 잘못 where' 마지막'당신이 사용하는 –
하는 데이터베이스? 그리고 가장 많은 학점을 가진 모든 학생들을 원하십니까? – Bohemian
이것은 Oracle SQL Developer를 사용하고 있습니다. 예, 저는 한 학점 만이 아니라 가장 많은 학점을 가진 모든 학생들을 원합니다. – user3664923