0
我使用Google App Engine與ndb後端,我想從ndb實體獲取單個值ex:int
,在任何查詢後我使用投影獲取整個實體,在我的情況下,我有一個Transactions實體和I想要總結金額屬性。如何從gae ndb查詢中獲取單個值?
我現在使用的是查詢列表解析結果,如:
query = ndb.gql("select amount from Transactions").fetch()
result = sum([x.amount for x in query])
有沒有什麼辦法讓NDB查詢返回大量的列表,這樣,我可以直接概括查詢結果像:
query = ndb.gql("select amount from Transactions").fetch()
result = sum(query)
在此先感謝
這是不可能 – Greg
甚至沒有比我更簡單的方法? 我的意思是如果我有一個數百個實體該怎麼做??! –
只需在上面的代碼中註釋'query'就是實體列表,而不是查詢對象。所以你可以將上面的結果減少到'result = reduce(lambda x,y:x + y,map(lambda x:x.amount,Transactions.query()。fetch( projection = [Transactions.amount,])))) '雖然遠不如下面的例子可讀。 –