使用Hibernate SQL Query在日期范围之间搜索文档

时间:2012-12-20 14:55:49

标签: java sql date timezone timestamp

我有一个包含剪辑列表的数据库。每个剪辑都有一个startTime和一个endTime,两个时间戳都带有时区。我要做的是获取落在时间范围内(开始 - 结束)的所有剪辑。我在java程序中有两个Date类型的对象,我从hibernate创建一个SQL查询:

select * from clips where (start_time IN(?,?) or end_time IN(?,?)) and clips.mediaid=? order by clips.id ASC

我使用SQLQuery的setDate(int arg0,Date arg1)方法设置Date参数但是当我执行时,我只在日期范围(开始 - 结束)至少有一整天的差异时得到结果。这就好像结果sql查询完全忽略了时差并只比较了日期(年,月,日)。

1 个答案:

答案 0 :(得分:0)

我认为应该是

(start_time >= ? and end_time <= ?)