A 라는 Table에..
Employee_id(사번), Start_date(발령일자)의 Column이 존재한다고 가정하고,
Employee_id 에는 INDEX_EMPLOYEE라는 INDEX가 걸려있다.
이 때, 전체 사원 중 최초 발령일자와, 최종 발령일자를 구한다면,
Index가 존재하지 않는다면, 아래와 같은 방법으로 밖에 구할 수 없을 듯 하나..
SELECT Min(Start_date) min_st_dt, Max(Start_date) max_st_dt
FROM A
만약, Employee_id에 Index가 존재하는 경우라면,
아래와 같은 방법을 쓸 수도 있을 것이다.
SELECT /*+ INDEX_ASC(A INDEX_EMPLOYEE) */ start_date
FROM a
WHERE rownum = 1 ;
SELECT /*+ INDEX_DESC(A INDEX_EMPLOYEE) */ start_date
FROM a
WHERE rownum = 1 ;
'IT Info > [Database]' 카테고리의 다른 글
[Oracle] Tip : 달력 생성 Query (0) | 2009.12.21 |
---|---|
[Oracle] Tip : 질의를 실행시킬 때 경과시간 측정하는 법.. (0) | 2009.12.18 |
[Oracle] 한글화된 오라클 제품, 그 이면의 비밀 (0) | 2009.12.15 |
[Oracle] 오라클 GDK를 사용하여 깔끔한 다국어 개발 유틸리티를 만들자 (0) | 2009.12.15 |
[Oracle] 오라클과 NLS의 찰떡궁합 들여다보기(2) (0) | 2009.12.15 |