[Oracle SQL] 날짜형-DATE, TIMESTAMP

고동이의 IT·2021년 10월 7일
0

Oracle SQL

목록 보기
5/31
post-thumbnail

날짜형

  • 날짜 및 시각(년, 월, 일, 시, 분, 초) 자료 저장

  • 덧셈과 뺄셈의 대상 / 곱셈나눗셈 불가넝

  • 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 ;
profile
삐약..뺙뺙

0개의 댓글