如何查询如果列表包含
问题描述:
我想这JDO查询转换为物化查询某个值:如何查询如果列表包含
Query query = pm.newQuery(User.class,
"someList.contains(userParam) && someProperty== null");
query.declareParameters("String userParam");
query.setRange(0, 1);
query.execute(user.getId());
这是我执行客体然而我不知道这是否是正确的:
Query<Question> queryResult = dao.query().filter("someProperty", null)
.filter("someList.contains", user.getId())
.limit(1);
答
Objectify像Java低级API一样工作。只要使用就行了财产的平等过滤器:
Query<Question> queryResult = dao.query(User.class)
.filter("someProperty", null)
.filter("someList", user.getId())
.limit(1);
如果您想查询'不null',可能你只需要添加操作数?即:'filter(“someProperty!=”,null)' – 2016-02-28 21:10:55
是的,但这被认为是一种具有轻微不寻常行为的不等式过滤器 - 阅读GAE文档中有关查询和索引的注释!=。 – stickfigure 2016-02-29 01:54:13