GoogleAppEngine的GQL在Java代码中不起作用
我对GoogleAppEngine的GQL有点问题。 如果我在数据存储上执行此查询: 通过createdDate DESC LIMIT 4从CoursePO订单中选择* 它正确地向我显示了最多4个结果元组的响应,无论您想要什么。。。当我在Java代码中执行相同的查询时,结果是不同的。有人知道为什么吗?我在下面发布了执行相同查询的方法GoogleAppEngine的GQL在Java代码中不起作用,java,google-app-engine,google-cloud-datastore,jdo,gql,Java,Google App Engine,Google Cloud Datastore,Jdo,Gql,我对GoogleAppEngine的GQL有点问题。 如果我在数据存储上执行此查询: 通过createdDate DESC LIMIT 4从CoursePO订单中选择* 它正确地向我显示了最多4个结果元组的响应,无论您想要什么。。。当我在Java代码中执行相同的查询时,结果是不同的。有人知道为什么吗?我在下面发布了执行相同查询的方法 PersistenceManager pm = PMF.get().getPersistenceManager(); Query q = pm.newQuery("
PersistenceManager pm = PMF.get().getPersistenceManager();
Query q = pm.newQuery("SELECT FROM " + CoursePO.class.getName() + " ORDER BY createdDate DESC LIMIT 4");
List<CoursePO> results = (List<CoursePO>)q.execute();
LOGGER.warning("Size: " + results.size()); //This size is greather than 4!! :-(
pm.close();
return results;
事先非常感谢
[编辑]
我想知道,如何否决这个问题-你认为这是一个愚蠢的问题吗?你认为我错了吗?在法官面前试一试
[新增信息]
结果内容与简单查询q=pm.newQueryCoursePO.class相同;因此,实体中的所有元素。唯一不同的是,DESC的子句ORDER工作得很好,但不适用于限制4
[编辑]
JDOQL没有任何限制修饰符。改为使用范围。尝试按createdDate描述范围0、10从订单中选择 数组的内容是什么?你有重复的元素吗?你从未见过的东西?其他?对不起,内容与简单查询q=pm.newQueryCoursePO.class相同;因此,实体中的所有元素。唯一不同的是,DESC的子句ORDER可以完美地工作,但不能用于限制4@JoseLUgia是你否决了我的问题?只是想知道..等等,它不是真正的GQL,而是JDOQL,它没有任何限制修饰符。改为使用范围。尝试按createdDate描述范围0、10从订单中选择。谢谢你@JoseLUgia!你知道,它工作得很好!我不知道Google是如何编写GQL语法的,所以,我认为看到我对这个问题的编辑是一个错误,不管怎样,你的回答是好的,你可以把它写成可接受的回答;-我会检查它作为更好的回应!非常感谢你!