2013-05-23 6 views
1

나는 아래 SELECT 문에 문제가 있습니다. 나는 필드 SO 사이에 데이터 충돌이 있음을 이해합니다. Orders 테이블에서는 NVARCHAR2(50)이고 Quotes 테이블은 Integer 데이터 유형으로 구성됩니다. 필드 SO의 데이터 형식을 변경하지 않고 위의 문에 표시된대로 SO 필드와 함께 유니온을 만들 수있는 해결 방법이 있습니까?오라클의 날짜 및 시간 변환

여기에 도움을 주시면 감사하겠습니다.

답변

3

그냥이 일을하기 위해

select 1 from dual --integer datatype 
union all 
select '1' from dual --varchar2 datatype 

아래의 쿼리처럼, 당신은

select to_char(1) from dual --change the datatype to CHAR in Quotes table 
union all 
select '1' from dual   -- this remain unchanged 

당신의 최종 쿼리

처럼 될 것 VARCHAR

에 INTEGER 데이터 유형을 변경해야한다
SELECT SO FROM ORDERS 
UNION ALL 
SELECT TO_CHAR(SO) FROM QUOTES 
+0

감사합니다. Gaurav. Google에서 검색 중이었고 CAST 문과 같은 것을 발견했습니다. 나는이 CAST (INT INTEGER)를 좋아했다. 그것은 나를 위해 일한다. 그러나 나는 이것이 올바른 방법인지 확실하지 않다. 이 점을 좀 알려주시겠습니까? – santhosha

+0

@santhosha : 어느 쪽이든 괜찮습니다. –