본문 바로가기
Developer/DB

[Oracle] TO_DATE, TO_CHAR

by 순수한소년 2017. 1. 10.
728x90
반응형
출처
http://aesya.tistory.com/15

TO_DATE와 TO_CHAR예제입니다.

문자열을 데이트타입으로 입력
INSERT INTO 테이블 (날짜컬럼)
VALUES ( SYSDATE )

INSERT INTO 테이블 (날짜컬럼)
VALUES ( TO_DATE('2011-03-03','YYYY-MM-DD') )

INSERT INTO 테이블 (날짜컬럼)
VALUES ( TO_DATE('12-JAN-1982', 'DD-MON-YYYY') )

INSERT INTO 테이블 (날짜컬럼)
VALUES ( TO_DATE('10-04-2010 20:37:50','MM-DD-YYYY HH24:MI:SS') )


 입력 (INSERT)

1. 기타 포맷형식으로 입력

 INSERT INTO TABLE_NM (REG_DATE) VALUES ( TO_DATE('11-23-2012 10:26:11','MM-DD-YYYY HH24:MI:SS') )

 

2. 오늘날짜 자동입력
 INSERT INTO TABLE_NM (REG_DATE) VALUES ( SYSDATE )

 출력(SELECT)

1. 포맷에 맞춰서 출력하기

 SELECT TO_CHAR(REG_DATE,'YYYY-MM-DD HH24:MI:SS') FROM TABLE_NM

 에러 발생시

1. ORA-01861: 리터럴이 형식 문자열과 일치하지 않음

 - TO_DATE에서 형식을 똑바로 맞추지 못하면 나는 에러입니다.

 - 형식을 잘 맞추면 되게겠죠 ;;


데이트타입을 문자열로 출력

SELECT TO_CHAR(날짜컬럼,'YYYY-MM-DD') FROM 테이블

SELECT TO_CHAR(날짜컬럼,'DD-MON-YYYY') FROM 테이블

SELECT TO_CHAR(날짜컬럼,'YYYY-MM-DD HH24:MI:SS') FROM 테이블

데이트타입을 업데이트

UPDATE POLL_TABLE SET MOD_DT = TO_DATE('2009/06/01 11:00:00', 'YYYY/MM/DD HH:MI:SS') WHERE IDX = 'PL00000000' ;


TO_CHAR 타입을 업데이트

UPDATE POLL_TABLE SET END_DATE = '2020-05-30 18:00:00' WHERE IDX = 'PL00000000';

728x90
반응형