无论如何要使用 mongoengine 在列中获得最大值?

ehs*_*adi 2 python mongodb mongoengine aggregation-framework

我想知道是否有办法使用 Mongoengine 在 MongoDB 集合的列中获得最大值。是否可以?

Ros*_*oss 8

如果具有您的序号值的列名为“max_column”:

MyDocument.objects().order_by("-max_column").limit(-1).first()
Run Code Online (Sandbox Code Playgroud)

  • @Mr.WorshipMe first() 只解开结果集以获得一个对象。如果您调用一个返回 500 个对象的查询,并对其调用 first(),您仍然会从数据库中返回 500 个对象(通过游标),但是 ORM 只会扔掉除了您弹出的 first() 项之外的所有项关闭结果集。-1 只是在一个结果后关闭数据库中的游标,因此您不会获取所有其他对象或让游标保持打开状态。你只取一个,而且只有一个。这是一个优化。 (2认同)