grails ORM,如何在没有时间的情况下搜索日期

vik*_*kas 6 grails

我正在使用postrges db.我的域名有一个日期字段:

java.util.Date requestedDate;
Run Code Online (Sandbox Code Playgroud)

我想在我的控制器中按日期搜索:

eq ("requestedDate", requestedDate)
Run Code Online (Sandbox Code Playgroud)

这很好,但问题是日期和时间必须完全匹配.但在应用程序中,用户只会输入搜索项目的日期(比如给我所有在2014-02-05上发出的请求,浏览器应用程序会将当前时间添加到请求中).因此,比较失败,因为用户输入的时间与创建请求期间的时间不同.我尝试过,'like'但它会抛出错误.

如何仅比较日期部分?

rcg*_*e23 11

你可以这样做:

Date now = new Date()
now.clearTime()

def results = Meeting.withCriteria {
    between('date', now, now+1)
}
Run Code Online (Sandbox Code Playgroud)

因此,这将剥离当前日期的时间部分,然后执行"之间"查询(午夜刚刚过去和24小时后的午夜).