这个类似to this question只不过这是针对新开发银行的并且是最新的。 NDB 没有 Limit
属性。
问题是如何在使用 Google App Engine NDB 时获得字段的最大值?这本质上是复制 TSQL、PLSQL 等 SQL 语言中的 max 函数。
最佳答案
代码片段如下:
max_of_the_field = Kind.query().order(-Kind.the_field).fetch(1)
Kind
将替换为您的种类名称。您可能知道,种类大致类似于 SQL 表,而实体是记录。
请注意 order
参数开头的减号 (-)。这意味着下降。然后 .fetch(1)
说“给我第一条记录”。降序与 .fetch(1) 一起产生该字段的最大值。
max_of_the_field
是为了使其看起来更像是完整的代码行。当然,您可能会以不同的方式使用它。
the_field
需要建立索引,这超出了本答案的范围。
大量实体存在潜在的可扩展性和成本问题。其他人建议在添加/更新记录时以某种查找方式跟踪您的最大值。
关于google-app-engine - 如何使用 Google App Engine NDB 获得字段的最大值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39238632/