날짜 형변환 문의드립니다. (Sat Dec 18 00:00:00 KST 2010) 0 5 7,667

by 박민철 날짜 DATE 형변환 TO_DATE [2014.03.11 11:06:06]



안녕하세요~
정말 오랜만에 문의 글을 올립니다.^^

SAP와 ORACLE과의 외부 인터페이스 중..
SAP에서 DATS 타입을 오라클 VARCHAR(8) YYYYMMDD 로 형변환 해야 하는 상황이 발생하였습니다.
(YYYYMMDD로 협의해서 풀기가 힘든 상황입니다.)

DATA는 아래와 같습니다.

Sat Dec 18 00:00:00 KST 2010
Tue Apr 26 00:00:00 KST 2011
Fri Oct 14 00:00:00 KST 2011
Mon Dec 27 00:00:00 KST 2010

JAVA 기반에 프레임웍을 사용중이며..
TO_DATE 함수 등을 이용하여 형변환 하고 싶습니다.^^

TO_DATE 함수는 안되네요^^

* 날짜 포맷
SELECT * FROM V$NLS_PARAMETERS
WHERE PARAMETER  = 'NLS_DATE_FORMAT' ;

* 결과
NLS_DATE_FORMAT :    RR/MM/DD

조언 부탁드립니다.
by 신이만든짝퉁 [2014.03.11 11:21:51]
select to_char(sysdate, 'YYYYMMDD') from dual;

위 쿼리를 말씀하시는 건지요?

by 박민철 [2014.03.11 11:33:54]
네 맞습니다.
정확히 하면 아래와 같습니다.

SELECT TO_DATE('Sat Dec 18 00:00:00 KST 2010', 'YYYYMMDD')    FROM DUAL;

SELECT TO_CHAR('Sat Dec 18 00:00:00 KST 2010', 'YYYYMMDD')    FROM DUAL;

위 처럼 했을때 오류가 납니다.^^

by 임상준 [2014.03.11 13:09:17]
Sat Dec 18 00:00:00 KST 2010 이게 yyyymmdd 타입이 아니니까 오류가 나겠죠;

by 신이만든짝퉁 [2014.03.11 13:22:46]
SELECT TO_CHAR(TO_DATE(REPLACE('Tue Apr 26 00:00:00 KST 2011', 'KST ', ''), 'Dy Mon DD HH24:MI:SS YYYY','NLS_DATE_LANGUAGE=AMERICAN'), 'YYYYMMDD') DATE_FORMAT FROM DUAL;

by 박민철 [2014.03.11 13:48:52]

감사합니다.^^
DATE 포맷을 변경하는 방법이 있었네요~
오늘도 한수 배우고 갑니다.^^

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입