Database/Oracle
[Oracle] ORA-01791: SELECT 식이 부적합합니다 / 원인 및 해결 방법
코딩 시그널
2021. 1. 20. 14:15
반응형
오늘은 오라클 에러 ORA-01791: SELECT 식이 부적합합니다. 에 대해 정리해 보겠습니다.
오류 내용
ORA-01791: SELECT 식이 부적합합니다
01791. 00000 - "not a SELECTed expression"
쿼리
SELECT DISTINCT EMP_NO,
EMP_TP,
KOR_NM,
ENG_FNM_NM,
ENF_FNM_NM1,
AGE,
DEPT_CD
FROM HR_EMP_MST
ORDER BY NUM_ID
발생 원인
SELECT 문에서 DISTINCT와 ORDER BY 절을 함께 사용했을 때 발생함
해결 방법
DISTINCT와 ORDER BY을 함께 사용할 경우 ORDER BY 절에는 SELECT 문에 사용된 칼럼들만 사용할 수 있습니다. 따라서 ORDER BY 절에 사용된 컬럼이 SELECT 문에 존재하지 않다면 해당 컬럼을 SELECT절에 넣어주면 오류를 해결할 수 있습니다.