【发布时间】:2015-07-13 17:53:07
【问题描述】:
我想从数据库中获取特定日期发生的结果。问题是数据库包含日期+时间,但我只需要基于日期部分的结果。
@Query("from TableA where traveller = ?1 and direction = ?2 and targetDate = ?3")
List<TableA> findListOfRequestsWithDateAndTraveller(String traveller, String direction, Date date);
【问题讨论】:
-
您使用的是哪个数据库,对于Oracle,您可以将时间和日期过滤
-
@SaurabhJhunjhunwala 这是杀死日期时间列索引的最佳方法。应该做的是
between,将午夜的特定日期(包括)作为下限,将第二天午夜(排除)作为上限。 -
@fge:
BETWEEN会有点不准确,因为它包括下限和上限。准确地说:x >= date AND x < (date + 1).
标签: java sql postgresql hql