Grails 按日期筛选记录时忽略时间部分
我客户的数据库很旧。例如,旧的Grails 按日期筛选记录时忽略时间部分,grails,gorm,Grails,Gorm,我客户的数据库很旧。例如,旧的DATE列只包含日期值。但升级后,它现在可以支持DateTime值。我有一个名为LAST\u UPDATED\u DATE的专栏,其中的值可以从2001-08-16到2016-04-28 12:00:12不等。前者插入到数据库的旧版本中,而后者是升级版本 我正在Grails上执行搜索条件,其中需要检索特定日期的行,例如,去年4月25日更新的行。问题是怎么做?我可以这样做: SimpleDateFormat formatter = new SimpleDateForm
DATE
列只包含日期值。但升级后,它现在可以支持DateTime值。我有一个名为LAST\u UPDATED\u DATE
的专栏,其中的值可以从2001-08-16
到2016-04-28 12:00:12
不等。前者插入到数据库的旧版本中,而后者是升级版本
我正在Grails上执行搜索条件,其中需要检索特定日期的行,例如,去年4月25日更新的行。问题是怎么做?我可以这样做:
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
Date parsedDate = formatter.parse("2016-04-25");
ArrayList records = Table.createCriteria().list {
...
eq("lastUpdatedDate", parsedDate)
...
}
但并非当天的所有条目都将被选中。将只选择时间为
00:00:00
的记录。如何选择该日期的所有记录,而不考虑它们的时间?搜索当天午夜到下一个午夜之间的时间段:
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
Date parsedDate = formatter.parse("2016-04-25");
ArrayList records = Table.createCriteria().list {
...
ge("lastUpdatedDate", parsedDate)
lt("lastUpdatedDate", parsedDate + 1)
...
}