[英]grails ORM , how to search Date without time
我正在使用postrges db。 我的域名有一个日期字段:
java.util.Date requestedDate;
我想在我的控制器中按日期搜索:
eq ("requestedDate", requestedDate)
这很好,但问题是日期和时间必须完全匹配。 但是在应用程序中,用户只会输入搜索项目的日期(比如给我所有在2014-02-05上发出的请求,浏览器应用程序会将当前时间添加到请求中)。 因此,比较失败,因为用户输入的时间与创建请求期间的时间不同。 我尝试'like'
但它抛出错误。
如何仅比较日期部分?
你可以这样做:
Date now = new Date()
now.clearTime()
def results = Meeting.withCriteria {
between('date', now, now+1)
}
因此,这将剥离当前日期的时间部分,然后执行“之间”查询(午夜刚刚过去和24小时后的午夜)。
仍然看起来没有方便的方法来实现这一点。 您需要通过计算当天的开始和一天结束来进行小型绕行,并使用Between运算符。
编辑我刚刚看到rcgeorge23为你提供了正确的例子。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.