문제

Union이 모두 포함 된 쿼리를 만들었지 만 두 부분은 동일한 데이터 유형이 아닙니다. 내 말은, 하나의 열을 표시해야하지만 두 열의 형식은 데이터를 얻는 곳에서 차이가 있습니다. 그래서 내가 예를 들어 있다면 :

select a,b
from c
union all
select d,b
from e

A와 D는 숫자이지만 형식이 다릅니다. 그것은 A의 길이가 15이고 B의 길이는 13입니다. 부동 소수점 후에 숫자는 없습니다. 숫자를 사용하여 Varchar, Integer 및 Decimal은 작동하지 않았습니다. 나는 항상 메시지를 받는다 : 데이터 변환 또는 데이터 매핑 오류. 이 필드를 동일한 형식으로 어떻게 변환 할 수 있습니까?

도움이 되었습니까?

해결책 2

캐스트 함수를 사용하여 열 유형을 동일한 유형으로 변환했습니다 (길이가 큰 바르 차르). 따라서 문제없이 Union을 사용했습니다. 원래 유형이 필요할 때 다시 다시 돌아 왔을 때 동일한 캐스트 함수를 사용했습니다 (이번에는 값을 플로트로 변환했습니다).

다른 팁

DB2 경험은 없지만 'A'& 'D'를 동일한 유형으로 캐스트 할 수는 없습니다. 분명히 두 형식을 모두 처리 할 수있을만큼 큽니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top