728x90
데이터 타입이 일치하지 않는 경우 발생하는 오류이다.
하지만 아~무리 쿼리를 확인해도 데이터 타입은 전부 일치했다.
이럴 때 정말 당황스럽다..^____^
어찌 감으로 해결했는데
원인은 DECODE 사용할 때 함수 결과 데이터 타입이 일치하지 않아서였다.
예를 들어
DECODE( ? , 'Y', 1000 , 'FREE') as price
? 에는 'N'이나 'Y'만 온다고 가정할 때,
? = 'N' 일 경우 price는 문자열인 'FREE'가 되고,
? = 'Y' 일 경우 price는 숫자(넘버)인 1000이 된다.
결론: 함수 결과의 데이터 타입도 맞춰야 한다.!
이외 기본적인 데이터 타입이 STRING인데 NUMBER를 더하고 뺀다던가 (ex '만원' - 3000 )
price가 NUMBER로 정의되어 있는데 다른 데이터 타입을 넣는다던가 (ex price = '만원')
형 변환 시 데이터 형이 변환하는 형과 부적절하면 (ex to_number('1000,000,000,')) -- , (콤마)가 문제
에러가 발생할 수 있다.
728x90
댓글