본문 바로가기
[개발] Programming/Database

오라클, VARCHAR2 날짜를 원하는 포멧으로 변경하는 방법

by eatyourKimchi 2019. 8. 9.

 

날짜 포멧 변환

 

날짜 형식이 DATE라면 TO_DATE(SYSDATE, 'YYYY.MM.DD')로 간단하게 날짜 포멧을 지정할 수 있지만,

VARCHAR2 형식의 날짜 데이터는 TO_DATE로 바로 원하는 포멧으로 지정할 순 없습니다.

만약 바로 TO_DATE를 적용하면 YYYY.MM.DD로 지정해도 이상하게 YY/MM/DD 형식이 되었습니다.

 

 

해결 방법은

VARCHAR 타입 날짜 데이터를 DATE 형식으로 변환해준 뒤, 다시 CHAR 형으로 포멧을 지정해주면 됩니다.

즉, TO_DATE 적용 후 TO_CHAR 함수를 적용해주면 됩니다.

 

 

예) 현재 날짜를 시분초를 제외하고 2019.08.08 형식으로 변경하고 싶은 경우

 

TO_CHAR(TO_DATE('20190808'), 'YYYY.MM.DD'), 'YYYY.MM.DD')

-- 결과 : 2019.08.08

 

 

TO_DATE나 TO_CHAR 중 하나만 빠져도 원하는 포멧으로 변경할 수가 없었습니다.

 

 

 

댓글