반응형
728x90
반응형
ORA-10858
a non-numeric chracter was found where a numeric as expected
해당 오류는 아래와 같은 상황에서 발생한다.
SELECT TO_DATE(SYSDATE, 'YYYYMMDD') FROM DUAL;
SYSDATE는 이미 DATE 타입의 값인데 해당 값을 다시 TO_DATE()를 사용하여 DATE 타입으로 변환을 시도했기 때문에 발생한다.
SELECT TO_CHAR(SYSDATE, 'YYYYMMDD') FROM DUAL;
Foramt 을 변경하려면, Date 타입의 값을 TO_CHAR()을 사용하여 변경해주자.
ORA-01481
invalid number format model
해당 오류는 아래와 같은 상황에서 발생한다.
SELECT TO_CHAR('20210705', 'YYYYMMDD') FROM DUAL;
해당 오류는 문자열의 일자를 TO_CHAR()을 사용하여 format을 지정하려고 했기 때문에 발생한다.
SELECT TO_DATE('20210705', 'YYYYMMDD') FROM DUAL;
이렇게 TO_DATE()를 사용하여 지정할 수 있다. 하지만 만약 Date 타입으로 조회가 불필요하다면 아래와 같이 조회하자.
SELECT TO_CHAR(TO_DATE('20210301', 'YYYYMMDD'), 'YYYYMMDD) FROM DUAL;
반응형
'Coding > SQL Query' 카테고리의 다른 글
[Mysql] 특정 database 안의 모든 테이블 데이터 삭제 (0) | 2021.11.03 |
---|---|
[Oracle] COUNT() OVER 함수 사용하여 특정 컬럼의 그룹별 DISTINCT 개수 구하기 (0) | 2021.10.21 |
[Oracle] startDate-endDate 기준 포함되는 월(Month) 조회 (0) | 2021.07.05 |
WM_CONCAT()를 사용하여 열-> 행(, 구분)으로 바꾸기 (0) | 2020.01.19 |
mysql > 24시간 이내에 업로드된 데이터 찾기 (0) | 2018.10.29 |