2011-08-18 17:26:24
SQL 4 Oracle 오라클용 sql 실무
▒ 재미있는 DUAL 테이블
Oracle에는 SYS가 소유하고, 모든 USER가 사용할 수 있는 DUAL이라는 Table이 있다.
용도는 개별 계산식 테스트나,
select절 안에서 연관 계산식으로 사용이 가능한 재미있는 Table이다.
▒ DUAL Table을 이용한 sysdate 날짜 분리하기
select
to_char(sysdate,'YYYY.MM.DD HH24:MI:SS') 년월일시분초,
to_char(sysdate,'YYYYMMDD') 년월일,
to_char(sysdate,'HH24') 시,
to_char(sysdate,'MI') 분,
to_char(sysdate,'SS') 초,
trunc( months_between( sysdate,to_date('20100801') ) / 12 ) 년도차이,
mod( trunc( months_between( sysdate,to_date('20100801') ) ), 12 ) 월차이,
trunc(sysdate - add_months(to_date('20100801'),trunc( months_between( sysdate,to_date('20100801') ) ))) 일차이,
trunc( mod( (sysdate - to_date('20100801') )*24, 24 ) ) 시간차이,
trunc( mod( (sysdate - to_date('20100801'))*24*60, 60 ) ) 분차이,
trunc( mod( (sysdate - to_date('20100801'))*24*60*60, 60 ) ) 초차이
from dual
▒ 결과
| 년월일 시분초 |
년월일 | 시 | 분 | 초 | 년도차이 | 월차이 | 일차이 | 시간차이 | 분차이 | 초차이 |
| 2011.08.18 17:18:20 | 20110818 | 17 | 18 | 20 | 1 | 0 | 17 | 17 | 18 | 20 |

'SQL4Oracle' 카테고리의 다른 글
| replace가 꼭 필요한 시점 (0) | 2023.03.10 |
|---|---|
| 재미있는 DUAL 테이블2 (0) | 2023.03.10 |
| 회차 구간별 집계 (0) | 2023.03.10 |
| Informix와 Oracle 달랐던 점 한가지 (0) | 2023.03.10 |
| 주민등록번호 성별 구분 (0) | 2023.03.10 |