2011-11-30 1 views
0

yyyy-mm-dd 형식의 문자열 필드가 있습니다. 날짜 필드로 변환해야합니다.현재까지 캐스팅 문자열이 Netezza의 빈 문자열에서 작동하지 않습니다.

이 내 SQL 쿼리입니다 :

select cast(rpad(trim(field_name),10,' ') as date) as field_name 
from table_name 

그것은 값이 기록을 위해 잘 작동하지만 나는 또한 TO_DATE 기능을 사용하여 시도 빈 문자열

는 기록을 위해,하지만 오류가 있습니다 "잘못된 날짜"라고 말합니다.

답변

1

아래 쿼리를 확인하십시오. SQL 서버와는 달리 - -

SELECT TRIM(LEADING 0 FROM CAST("YourStringColumn" AS DATE))

+0

원하는 결과는 무엇입니까? – Teja

+0

안녕하세요 Venk, 이전에 시도했는데 "잘못된 날짜"오류가 발생합니다 – pinhead

+0

테이블을 만들 때 해당 필드가 새 테이블의 날짜로 필요합니다. – pinhead

0

네티는 날짜에 빈 문자열을 변환 할 좋아하지 않는다 그래서 널에 빈 문자열을 변환 할 경우 문을 사용하는 것이 좋다. 이것을 시도하십시오 :

select case when field_name = '' then NULL else date(field_name) end as field_name 
from table_name;