가능하면 칼럼에는 함수를 사용하지 않는 것이 좋습니다.
인덱스 사용을 보다 효율적으로 하기 위해서죠.
날짜에 관련된 계산은 아래와 같이 하는 것이 좋습니다.
그리고 Y2K문제를 위해서 연도는 반드시 4자리로 하시는 것이 좋습니다.
select count(*) from A
where date between to_date('20-MAR-2001','DD-MON-YYYY')
and to_date('20-MAR-2001','DD-MON-YYYY') + 0.99999 ;
얼쩔수 없이 2자리를 사용한다면 경우에 따라서 아래와 같이
YY가 아니라 RR도 있다는 것을 반드시 기억하시기 바랍니다.
RR의 용도를 반드시 이해하고 사용하세요.
select count(*) from A
where date between to_date('20-MAR-01','DD-MON-RR')
and to_date('20-MAR-01','DD-MON-RR') + 0.99999 ;
>>이근행 님께서 쓰시길<<
:: 2001년 3월 20일 데이타를 가져오는 쿼리는 다음 밖에 없나요?
::
:: select count(*) from A where date >= '20-MAR-01' and date < '21-MAR-01';
:: select count(*) from A where date between '20-MAR-01' and '21-MAR-01';
::
:: -----------------------------date 필드는 DATE 타입입니다.
::
:: select count(*) from A where date ='20-MAR-01'는 안 되네요...흑흑
::
:: 20-MAR-01만 가지고 찾는 방법은 없을까요?
|