我有一个带有timestamp
条目的SQL表。
现在我想根据日期(特定日期)选择条目,忽略时间。
这可能,或者我是否必须另外保存sql.date
列以获取特定日期的所有条目?
@Entity
public class MyEntry {
@Temporal(TemporalType.TIMESTAMP)
private Date date;
}
这个sql没有结果,因为查询只查找没有时间部分的日期。
SELECT * FROM mytable wher date = '2015-10-10'
答案 0 :(得分:0)
您必须将其转换为带时区的时间戳或时间戳
SELECT *
FROM mytable
WHERE date >= '2015-10-10 00:00:00.000'::timestamp
AND date < '2015-10-11 00:00:00.000'::timestamp
或
SELECT *
FROM mytable
WHERE date BETWEEN '2015-10-10 00:00:00.000'::timestamp AND '2015-10-11 00:00:00.000'::timestamp
如果查询是自动生成的,您应该考虑将生成基数从date更改为long。
new Date().getTime();