我正在使用 Google-Appengine-NDB。我试图从数据库中获取不同的值,但它不起作用。
Now my code is:
query_set = cls.query().order(cls.ls) # Getting ordered queries.
set_of_field = set([data.field for data in query_set]) # And using this loop for differ.`
但循环时间太长(超过 12 秒)。
请帮助我,我怎样才能加快速度,或者如何从ndb获取不同的值?
尝试不同的查询,
如果您的字段已编入索引,您可以使用以下命令:https://developers.google.com/appengine/docs/python/ndb/queries#projection https://developers.google.com/appengine/docs/python/ndb/queries#projection
query_set = cls.query(projection=["field"], distinct=True)
set_of_field = [data.field for data in query_set]
但是,如果您有一个巨大的列表,您可以在任务队列中执行此操作并将结果存储在某处,或者只是将不同的数据保留在另一个模型中。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)