본문 바로가기
오류 해결

[ORA-01790] 대응하는 식과 같은 데이터 유형이어야 합니다.

by 쿠쿠씨 2023. 4. 7.
반응형

 

여러 SELECT 문을 UNION ALL 하는 과정에서 오류가 발생하였습니다.

 

원인

UNION ALL 함수로 행을 합치는 과정에서 컬럼의 데이터 형식이 달라서 오류가 났습니다. 

 

/* 변경 전 */
SELECT   123, 456 FROM DUAL	--숫자타입
UNION ALL
SELECT   'ORACLE', '' FROM DUAL	--문자타입

 

숫자 타입 컬럼과 문자 타입 컬럼을 합치려 하니 오류가 발생합니다.

 

해결 방법

합치려는 열의 데이터 타입을 일치시킵니다.

 

/* 변경 후 */
SELECT   '123', '456' FROM DUAL	--문자타입
UNION ALL
SELECT   'ORACLE', '' FROM DUAL	--문자타입

 

숫자 타입 컬럼을 문자 타입으로 변경하니 정상적으로 합쳐졌습니다.

반응형

댓글