본문 바로가기
DataBase/Oracle with Error

[해결 방법] ORA-00933: SQL 명령어가 올바르게 종료되지 않았습니다

by HJ0216 2023. 3. 1.

 기본 환경: IDE: SQL Developer, Language: Oracle SQL

 

 

발생 Error

Oracle SQL로 다음 Source Code를 실행할 경우,

⚠️ 다음과 같은 Error 발생

ORA-00933: SQL 명령어가 올바르게 종료되지 않았습니다
00933. 00000 -  "SQL command not properly ended"

 

 

발생 원인

SQL 구문 작성 시, 다음 규칙에 따라야 함

SELECT - FROM - WHERE - GROUP BY - HAVING - ORDER BY

 

 

해결 방법

서브 쿼리* 사용

서브쿼리: 먼저 실행되어 그 결과값이 사용되어야 할 쿼리가 있을 때 사용

 

➕ ORDER BY와 WHERE의 순서만 바꿔서 기재할 경우, 원하는 값이 나오지 않을 수 있음

문제에서 구하고자하는 것은 NAME으로 정렬 후, ROWNUM 값의 1 ~ 5 반환을 요청

만일 다음의 구문을 실행할 경우,

ROWNUM이 1 ~5 사이의 값을 추출 후 NAME으로 DESCENDING하게 됨