오라클
날짜범위를 크게하니까 ORA-01839 에러가 생겼던 일
5시간코딩
2019. 12. 3. 18:25
현재 글쓴 날짜는 2019년이다.
2019년 데이터를 돌릴 때는 아무 이상없이 돌아가던 쿼리가
2013년~2019년으로 범위를 넓게 해서 돌리니까 없던 에러가 생겼다.
심지어 오라클에서 에러가 발생한 부분이라고 표시해준 부분도 완전 이상한 곳이더라...
원인은... 사용하던 테이블 중 가장 컸던 테이블이 2000만row짜리가 있었는데, 사용했던 컬럼 중에
문자형식으로 된 날짜가 있었는데,
그 중 '20140631' 이라는 row가 6개 정도 있었다.
6월달은 30까지 밖에 없다... 날짜로 바꾸니 에러가 날 수 밖에 없다.
날짜는 자동으로 박힐텐데 왜 이런 이상한 날짜가 들어갔는지는 알 수 없었다. 뭐 어쨋든..
타부서에 수정요청했지만, 안된다는 반응이어서
어쩔 수 없이 하드코딩으로 CASE WHEN date = '20140631' THEN '20140630' ELSE date END
로 하고 있다.