2010-01-07 4 views
1

두 날짜 사이에 날짜 항목이있는 레코드를 반환하기 위해 두 날짜를 사용하는 JPA 명명 된 쿼리가 있습니다.두 개의 동일한 날짜와 질의 사이에서 EJBQL을 어떻게 사용합니까?

시작일과 종료일 모두에 동일한 날짜를 입력하면 해당 날짜의 레코드가 있더라도 행을 반환하지 않습니다.

쿼리를 작동시키는 방법이 있습니까? 또는 두 날짜가 같을 때 다른 쿼리를 실행해야합니까? 나는 모든 내 쿼리를 실행하는 경향이

select o from CustomerOrder o 
where o.orderDate between :date_from and :date_to 
order by o.orderDate desc 

답변

4

: 여기

는 쿼리의 나는 거의 between를 사용하지

select fld from tbl 
where date >= &start_date 
    and date <= &end_date; 

-에 상관없이 내가 사용하는 DBMS가 같은 perormance을 가지고 이러한 방법 중 어떤의 사용.

내 조언은 where ... between 대신 where ... and을 사용하고 성능이 저하되지 않는지 확인하기 위해 몇 가지 타이밍을 수행하는 것입니다.

일부 DBMS는 실제로 사용자가보고있는 "엔드 포인트"(첫 번째 및/또는 마지막)를 제외합니다. 두 절의 SQL 문에이 문제가 없어야합니다.

관련 문제