我想知道是否有办法使用Mongoengine在MongoDB集合的列中获取最大值。有可能吗?
答案 0 :(得分:4)
隐藏文档(请注意请求补丁)是.get_collection()
访问器,它返回集合的原始pymongo对象。在这里,您可以使用.aggregate()
ClassModel._get_collection().aggregate([
{ "$group": {
"_id": Null,
"max_column": { "$max": "$column" }
}}
])
当然ClassModel
是您正在使用的实际类,“column”是您希望使用$max
运算符获得最大值的列的名称。字段上的$
前缀是聚合框架如何识别管道中的字段变量。
答案 1 :(得分:4)
如果具有您的序数值的列名为“max_column”:
MyDocument.objects().order_by("-max_column").limit(-1).first()