Reputation: 254
I want to search in DB all rows with a part of Timestamp like "2014-08-12". And if there are rows like "2014-08-12 16:58:48.477" or "2014-08-12 15:58:48.477" I want to get it
I use JPA + Hibernate + Criteria API
document.setRegister_date(DateUtil.DateToSQLTimestamp("2013-08-12 16:58:48.477"));
if (register_date != null) {
predicates.add(cb.equal(DocumentsRoot.get("register_date"), register_date));
}
Upvotes: 1
Views: 111
Reputation: 254
String date = "2013-08-12";
document.setRegister_date(DateUtil.DateToSQLTimestamp(date + " 00:00:00.000"));
document.setRegister_end_date(DateUtil.DateToSQLTimestamp(date + " 23:59:59.999"));
Timestamp register_date = document.getRegister_date();
Timestamp register_end_date = document.getRegister_end_date();
predicates.add(cb.between(DocumentsRoot.get("register_date"), register_date, register_end_date));
Upvotes: 0
Reputation: 166
If you know that the format will always exclude time, you can use a range query where you can set the from
as 00:00:00.001 and to
as 23:59:59.999
Upvotes: 2