오라클 날짜관련 .....
오라클 고객센터에서 퍼 왔습니다.
=====================================================================
Some Examples of Storing Dates in SQL
DATE 타입의 값에 대한 입력 예제
다양한 종류의 DATE 타입의 컬럼을 가지는 테이블을 생성하였다.
create table DATE_TEST
(a date vms,
b date ansi,
c time(0)
default TIME '06:00:00',
d timestamp(2),
e interval year(4)
CHECK(e > INTERVAL '10' YEAR)
not deferrable,
f interval day(3) to minute,
g char(16));
ANSI/ISO SQL-92 는 date/time 문자열 (DATE VMS, DATE, TIME, TIMESTAMP and
INTERVAL)이 date/time columns에 첨부될 수 있도록 하고 있다. date/time 구문
을 사용하는 INSERT, DELETE, UPDATE, SELECT 그리고 CREATE, ALTER 등의
문장에서 date/time 문자열을 볼 수 있다.
insert into DATE_TEST (a) value (DATE VMS'2-APR-1957');
insert into DATE_TEST (b) value (DATE '1993-2-23');
insert into DATE_TEST (c) value (TIME '12:20:00');
insert into DATE_TEST (d) value (TIMESTAMP '1993-2-23 12:20:00.00');
insert into DATE_TEST (e) value (INTERVAL '35' YEAR(4));
insert into DATE_TEST (f) value (INTERVAL '365:10:21' DAY(3) TO MINUTE);
DATE VMS 컬럼은 EDIT STRING을 정의하여 다양한 형식으로 표현할 수 있지만,
ANSI/ISO date/time 값은 다음과 같이 CAST 연산자를 이용하여 DATE VMS로
바꾸지 않는 이상 계속 ANSI/ISO 형식으로 볼 수 밖에 없다.
SQL> select d, CAST(d as DATE VMS)
cont> from DATE_TEST
cont> where d is not null;
D
1993-02-23 12:20:00.00 23-FEB-1993 12:20:00.00
1 row selected
SQL>
Rdb는 DATE VMS에 대한 내부 형식을 제공한다. 이 형식은 TIMESTAMP 형식과
비슷하지만 "-", ":" 의 구두점이 없다.
다음의 예에서는 DATE VMS 컬럼에 CHAR 컬럼을 할당한다. 애플리캐이션에서
CHAR 컬럼은 호스트 변수나 module language 파라미터가 될 수 있다.
SQL> insert into DATE_TEST (g) value ('1957020100000000');
1 row inserted
SQL>
SQL> update DATE_TEST
cont> set a = g
cont> where g is not null;
1 row updated
SQL>
SQL> select a, g
cont> from DATE_TEST
cont> where g is not null;
A G
1-FEB-1957 00:00:00.00 1957020100000000
1 row selected
'(DB) Oracle > 기본문법' 카테고리의 다른 글
Oracle - DDL문 (0) | 2017.01.18 |
---|---|
Oracle - LOB Type (0) | 2017.01.18 |
Oracle - Data_Type_LOB (0) | 2017.01.18 |
Oracle - Data_Type_유니코드지원 (0) | 2017.01.18 |
Oracle - Data_Type (0) | 2017.01.18 |