计算Google App Engine GQL查询结果

时间:2011-02-15 09:06:25

标签: google-app-engine

我正在尝试在Google App Engine中构建搜索引擎,并希望显示从该搜索查询中获得的结果数。我使用fetch()一次显示几个结果,但不知道如何显示从搜索中获得的结果数。 count()函数的限制只有1000,我的结果甚至可以超过10,00,000。所以,如果有人知道怎么做,请建议我.........

2 个答案:

答案 0 :(得分:7)

正如其他人告诉你的那样,count()无法有效扩展 要检索超过1000个实体,尽管文档说明了这一点,您必须指定一个上限:

your_model.all().count(100000000)

答案 1 :(得分:0)

计数功能没有限制。它的描述是:

计数(限制): 返回此查询提取的结果数。 count()比通过常量因子检索所有数据要快一些,但运行时间仍然随着结果集的大小而增长。最好只在计数较小的情况下使用count(),或指定限制。 count()没有最大限制。如果您未指定限制,则数据存储区将继续计数,直至完成计数或超时。 来自:GQL

因此,您可以使用count()。

编辑:您可以从版本1。3。6(2010年8月17日发布)开始。

查看changelog

这也应该有用:How to fetch more than 1000?

如果仍然在努力获取不超过1000而不是尝试迭代查询一次获取1000并将偏移设置为下一个1000,如前一个链接所述。