이번 글에서는 ORA-01481: invalid number format model 에러 해결 방법에 대하여 알아보도록 하겠습니다.
ORA-01481: invalid number format model
ORA-01481: 숫자 형식 모델이 부적합합니다.
쿼리를 짜다가 아래와 같은 에러가 종종 발생합니다.
예제를 통하여 에러가 발생한 이유와 해결 방법에 대하여 알아보도록 하겠습니다.
아래의 쿼리는 VARCAHR2 타입의 '20200601'을 VARCHAR2 타입으로 형 변환하여 조회하는 예제입니다. (벌써부터 이상하죠?)
위의 쿼리를 실행하니ORA-01481: invalid number format model 에러가 발생하였습니다.
이 에러가 발생한 이유는 이미 VARCHAR2 형식의 데이터를 VARCHAR2 형식으로 형 변환해서 발생한 에러입니다.
즉, '20200601' 이미 VARCHAR2 형식이죠? 따라서 VARCHAR2에서 VARCHAR2로 형 변환할 수는 없습니다.
해결 방법
위의 쿼리를 기준으로 날짜 형식으로 조회하게 하려면 TO_CHAR() 가 아닌 TO_DATE() 함수를 사용해야 합니다.
TO_DATE() 함수를 이용하여 다시 실행해 보도록 하겠습니다.
TO_CHAR()가 아닌 TO_DATE() 함수를 사용하니 쿼리가 제대로 동작하는 것을 확인할 수 있습니다.