DATE TYPE 데이타는 오라클 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 (*)
만일 시간,분이 입력되어 있는 데이타를 (*) 년,월,일로 조회하는 경우는
다음 SQL을 사용해서는 데이타를 조회할 수 없다.
SQL> SELECT * FROM EMP WHERE HIREDATE = '08-APR-94';
no rows selected
데이타를 조회하기 위해서는 다음과 같은 방법으로 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들은 같은 결과의 데이타가 조회되지만, B SQL은 INDEX를 사용할 수
있으므로 보다 더 효율적인 SQL이다
년,월,일만 입력하면 시간,분,초 값이 '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 (*)
만일 시간,분이 입력되어 있는 데이타를 (*) 년,월,일로 조회하는 경우는
다음 SQL을 사용해서는 데이타를 조회할 수 없다.
SQL> SELECT * FROM EMP WHERE HIREDATE = '08-APR-94';
no rows selected
데이타를 조회하기 위해서는 다음과 같은 방법으로 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들은 같은 결과의 데이타가 조회되지만, B SQL은 INDEX를 사용할 수
있으므로 보다 더 효율적인 SQL이다
| 12-27 | 2604 | |||
| 12-11 | 1883 | |||
| 53 | 03-15 | 1698 | ||
| 52 | 01-31 | 1801 | ||
| 51 | 01-31 | 2652 | ||
| 50 | 01-31 | 1420 | ||
| 49 | 01-19 | 1732 | ||
| 48 | 01-11 | 1623 | ||
| 47 | 01-03 | 2145 | ||
| 46 | 12-27 | 2604 | ||
| 45 | 12-19 | 1845 | ||
| 44 | 12-14 | 1821 | ||
| 43 | 12-11 | 1883 | ||
| 42 | 12-09 | 1478 | ||
| 41 | 12-01 | 1709 | ||
| 40 | 12-01 | 1882 | ||
| 39 | 12-01 | 1355 | ||
댓글 없음:
댓글 쓰기