谷歌应用程序引擎java过滤日期查询与天

时间:2012-02-11 13:05:26

标签: java google-app-engine

我正在寻找这样的事情。

public class User 
{
   private Date createdOn;
}

现在我需要一个查询来获取在任何月份或年份的第10天创建的用户。 就像我需要用户创建于2012年1月10日,2012年2月10日,2010年6月10日..... 我怎样才能在gae查询中获得一部分日期?

谢谢,

Ramesh.V

2 个答案:

答案 0 :(得分:3)

只需为您要查找的日期创建日期对象,并将其用作查询的一部分。查询中的日期没有什么特别之处。

不确定您是直接使用JDO,JPA还是数据存储,但无论如何

请参阅GQL参考(不是特定于python):http://code.google.com/appengine/docs/python/datastore/gqlreference.html

SELECT * FROM User WHERE createdOn ==:date

在JDO中它看起来像:

Query query = pm.newQuery(User.class);
query.setFilter("createdOn == dateParam");
List<User> results = (List<User>) query.execute(date);

答案 1 :(得分:1)

对于您的过滤器,您可以使用:

“(createdOn&gt; = p1)&amp;&amp;(createdOn&lt; = p2)”

您已将参数p1和p2设置为当前日期Date的开始和结束。