DATE type data는 오라클 Tool을 사용하여 시, 분, 초 등을 지정하지 않고
년, 월, 일만 입력하면 시, 분, 초 값이 '0' 으로 입력된다.
이 데이타는 다음과 같이 조회하면 확인해 볼 수 있다.
SQL> SELECT TO_CHAR(hiredate,'YYMMDD HH24:MI') hiredate
FROM emp;
HIREDATE
--------
940506 00:00
940407 00:00
940408 10:11 (*)
SQL> SELECT TO_CHAR(hiredate,'YYMMDD HH:MI') hiredate
FROM emp;
HIREDATE
--------
940506 12:00
940407 12:00
940408 10:11 (*)
만일 시, 분, 초가 입력되어 있는 data를 (*) 년, 월, 일로 조회하는 경우는
다음 SQL을 사용해서는 데이타를 조회할 수 없다.
SQL> SELECT *
FROM emp
WHERE hiredate = '08-APR-94';
no rows selected
이러한 DATE data를 조회하기 위해서는 다음과 같은 방법으로 SQL을 작성해야한다.
A. SQL> SELECT *
FROM emp
WHERE TO_CHAR(hiredate,'YYMMDD') = '940408'
B. SQL> SELECT *
FROM emp
WHERE hiredate BETWEEN '08-APR-94' AND
TO_DATE('08-APR-94') + .99999;
위 SQL들은 같은 결과의 data가 조회되지만, B SQL은 index를 사용할 수
있으므로 보다 더 효율적인 SQL이다.
|