우주코딩
오류 코드: ORA-01898 본문
오류 코드: ORA-01898
오류 코드: ORA-01898
설명: 정밀도 지정자가 너무 많습니다
원인: 날짜를 자르거나 반올림하는 동안 날짜 형식 그림에서 추가 데이터가 발견되었습니다.
조치: 날짜 형식 그림의 구문을 확인하고 다시 시도하십시오.
예제
order_date 컬럼 (DATE 타입) 을 between을 써서 조건을 줄 때
where trunc(order_date, 'yyyymmdd') between #{fromDate}(문자열 'yyyymmdd') and #{toDate}(문자열 'yyyymmdd')
이렇게만 걸 경우 나오는 에러
비교를 하려면 똑같은 데이터 형으로 변환한 뒤에 조건을 걸어야한다.
where trunc(to_char(order_date, 'yyyymmdd')) between #{fromDate}(문자열 'yyyymmdd') and #{toDate}(문자열 'yyyymmdd')
혹은
wherer trunc(TO_DATE(order_date, 'YYYY-MM-DD')) between to_date(#{fromDate}(문자열 'yyyymmdd') , 'yyyymmdd') and to_date(#{toDate}(문자열 'yyyymmdd') , 'yyyymmdd')
'월급루팡' 카테고리의 다른 글
파티셔닝을 생성하는 PostgreSQL 함수 만들기 (1) | 2023.12.18 |
---|---|
padStart (0) | 2022.05.12 |
svn 프로젝트 소스 임포트 할 때 순서, 에러 잡기 (0) | 2022.03.16 |
오라클 contains (0) | 2022.03.12 |
ORDER BY 2,4,6 의 의미는 무엇일까 (0) | 2022.02.28 |
Comments