티스토리 뷰
Oracle/[oracle] Error
[개발시 에러] ORA-00932 : 일관성 없는 데이터유형 : -이(가) 필요하지만 -임
kr98gyeongim 2020. 12. 22. 16:13■ 에러
ORA-00932 : 일관성 없는 데이터유형 : -이(가) 필요하지만 -임
※-에는 데이터형이 들어간다. Ex) CHAR이(가) 필요하지만 DATE임
<에러가 발생한 SQL문>
SELECT
ITEM_NO,
ITEM_ID,
(CASE WHEN SUBSTR(ITEM_ID, 0, 1) = 9 THEN '' -- 공백으로 추출(CHAR)
WHEN ITEM_KBN <> '2' THEN '' -- 공백으로 추출(CHAR)
ELSE TO_DATE(START_DATE, 'YYYY/MM/DD') -- 시작날짜로 추출(DATE
END) START_DATE
FROM
CC_HELPER_INFO_RIREKI_PA_TBL
WHERE
TO_DATE(TO_CHAR(SYSDATE, 'YYYY/MM/DD')) BETWEEN TO_DATE(START_DATE) AND TO_DATE(DECODE(END_DATE,'0','99991231', '99999999','99991231', END_DATE)
■ 원인
CASE문에서의 첫번째, 두번째의 조건에서 공백으로 추출하기 때문에 이 두개는 CHAR형으로 반환하고 있지만,
마지막 ELSE조건에서 시작날짜를 TO_DATE로 변환하여 추출하려고 하고있기 때문.
즉, 타입이 맞지 않아서 난 에러이다.
■ 대응방법
이 경우에는 셋 다 공통된 데이터형으로 반환을 하도록 수정해야한다.
마지막 ELSE 조건을 TO_CHAR 함수를 이용하여 날짜형 데이터를 문자형 데이터로 변환하여 추출하도록 하면 된다.
<수정 후의 SQL문>
SELECT
ITEM_NO,
ITEM_ID,
(CASE WHEN SUBSTR(ITEM_ID, 0, 1) = 9 THEN ''
WHEN ITEM_KBN <> '2' THEN ''
ELSE TO_CHAR(TO_DATE(START_DATE), 'YYYY/MM/DD')
END) START_DATE
FROM
CC_HELPER_INFO_RIREKI_PA_TBL
WHERE
TO_DATE(TO_CHAR(SYSDATE, 'YYYY/MM/DD')) BETWEEN TO_DATE(START_DATE) AND TO_DATE(DECODE(END_DATE,'0','99991231', '99999999','99991231', END_DATE)
'Oracle > [oracle] Error' 카테고리의 다른 글
[유틸리티 에러]KUP-04020: 지원되는 버퍼 크기 524288보다 긴 레코드가 <filename>에서 발견되었습니다. (0) | 2022.03.28 |
---|---|
[유틸리티 에러] EXP-00091: 의심스러운 통계를 내보내는 중입니다. (0) | 2022.03.28 |
[유틸리티 에러] IMP-00032: SQL문이 버퍼 길이를 초과했습니다. (0) | 2022.03.25 |
[개발시 에러] ORA-01481 : 숫자 형식 모델이 잘못되었습니다. (0) | 2021.02.24 |
[개발시 에러] ORA-06502:PL/SQL:수치 또는 값 오류:문자열 버퍼가 너무 작습니다. (0) | 2020.12.18 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- in/out/ref 공통점
- 에러
- 초기화파라미터파일
- NLog
- USER_SYS_PRIVS
- TrimEnd
- pl/sql
- PL/SQL 예외처리문
- 시간차이
- 유틸리티
- DBA_SYS_PRIVS
- rollback
- EXCEPTION절
- 참조전달
- PL/SQL 실행문
- DECLARE절
- grant
- Oracle
- commit
- 후나빙
- BEGIN절
- C#
- in/out/ref
- vba
- 유틸리티에러
- in/out/ref 예제
- in/out/ref 차이점
- VB.Net
- 동기통신
- REVOKE
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함