날짜형
날짜 및 시각(년, 월, 일, 시, 분, 초) 자료 저장
덧셈과 뺄셈의 대상 / 곱셈나눗셈 불가넝
SYSDATE : 시스템이 제공하는 날짜/시간 정보를 반환하는 함수
DATE, TIMESTAMP 제공
(1) DATE
. 기본 날짜형
(사용형식)
컬럼명 DATE;
사용예)
CREATE TABLE TEMP06(
COL1 DATE,
COL2 DATE,
COL3 DATE
);
INSERT INTO TEMP06
VALUES(SYSDATE, SYSDATE-30, SYSDATE+30);
INSERT INTO TEMP06
VALUES('20191019', '20110910', '20310930');
-- 문자열아니면 절대로 날짜로 안됨.
SELECT * FROM TEMP06;
SELECT TO_CHAR(COL1, 'YYYY-MM-DD HH24:MI:SS')
FROM TEMP06;
TO_CHAR -> 변환함수.
'YYYY-MM-DD HH24:MI:SS' -> 형식지정문자열
SELECT MOD(TRUNC(TO_DATE('19990208')-
TO_DATE('00010101'))-1,7) FROM DUAL;
-> 날짜 -날짜 = 날수(경과된 일수)가 구해진다.
(2) TIMESTAMP
. 기본 날짜형을 확장한 자료형
. 정교한 시간정보(10억분의 1초)나 시간대(TIMEZONE) 정보 포함
TIMESTAMP
-> 시간대 정보없는 데이터 타입 ,
TIMESTAMP WITH TIME ZONE
-> 서버가 위치한 시간대 정보포함,
TIMESTAMP WITH LOCAL TIME ZONE
-> 클라이언트가 위치한 시간대 정보포함
날짜타입 사용예)
CREATE TABLE TEMP07(
COL1 TIMESTAMP,
COL2 TIMESTAMP WITH TIME ZONE,
COL3 TIMESTAMP WITH LOCAL TIME ZONE);
문자열을 날짜로 변환하기 위해선 날짜타입의 형식 8자리(1999/02/08) /14자리 맞춰줘야함.
TIMESTAMP
정교한 시까지 표현
TIMESTAMP WITH TIME ZONE
서버가 위치한 시간대역. TIME ZONE 정보가 필요할때.
대륙명/도시명
TIMESTAMP WITH LOCAL TIME ZONE
내발밑에 있는 로컬서버의 시간대역 = TIMESTAMP 와 같은 기능 제공 똑같은 형식으로 출력
INSERT INTO TEMP07
VALUES(SYSDATE, SYSDATE, SYSDATE);
SELECT * FROM TEMP07 ;