2011-02-15 62 views
3

我正嘗試在Google App Engine中構建搜索引擎,並希望顯示從該搜索查詢中獲得的結果數。我使用fetch()一次顯示少量結果,但不知道如何顯示從搜索中獲得的結果數量。 count()函數只有1000的限制,我的結果甚至可以超過10,00,000。所以,如果有人知道如何做,請給我建議.........在Google App Engine中計算結果GQL查詢

回答

7

正如其他人告訴你的,count()不能有效地擴展。
要檢索超過1000個實體,儘管該文件說什麼,你必須指定一個上限:

your_model.all().count(100000000) 
0

計數功能沒有限制。它的描述:

count(limit): 返回此查詢獲取結果的數量。 count()比通過常量因子檢索所有數據要快一些,但運行時間仍隨結果集的大小增長。最好只在計數預計較小或指定限制的情況下使用count()。 count()沒有最大限制。如果您未指定限制,則數據存儲將繼續計數,直至完成計數或超時。來自:GQL

所以,你可以使用count()。

編輯:你可以從版本1.3.6(2010年8月17日發佈)開始。

看一看changelog

而且這應該是有幫助的:How to fetch more than 1000?

如果您仍然獲取沒有更多的1000比試圖遍歷查詢一次讀取1000和設定偏移到下一個1000作爲一個鏈接解釋奮鬥。

+0

我嘗試過,但即使我不提供它計數僅1000在最大 – niteshb 2011-02-15 09:41:23

+0

能極限你寫了一個你的代碼的例子? – kamaci 2011-02-15 09:47:10

相關問題