2010-01-07 51 views
1

我有一個JPA命名的查詢需要兩個日期,以便返回兩個日期之間的日期列條目的記錄。如何在兩個相同日期的查詢之間使用EJBQL?

如果我爲開始日期和結束日期輸入相同的日期,它將不返回行,即使該日期有記錄。

有沒有辦法讓查詢工作,或者我應該在兩個日期相同時再運行另一個查詢?

這裏的查詢:

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

回答

4

我傾向於運行我的所有查詢:

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

我很少用between - 我使用DBMS具有相同perormance不管是哪個的那些方法用來。

我的建議是做一些時間,看看是否沒有使用where ... and而不是where ... between,然後如果不是,則切換性能會降低。

某些DBMS實際上排除了可能是您所看到的「端點」(第一個和/或最後一個)。兩個子句的SQL語句不應該有這個問題。

相關問題