Django:获取其他字段';s从聚合查询中获取的值
该查询将为我提供最老的员工,因此我还想知道与该行相关的一些其他信息,例如idDjango:获取其他字段';s从聚合查询中获取的值,django,django-models,django-orm,Django,Django Models,Django Orm,该查询将为我提供最老的员工,因此我还想知道与该行相关的一些其他信息,例如id 我怎样才能做到这一点?谢谢。您不需要聚合,只需按查询集的年龄降序即可 es = Employee.objects.filter(a few filters).aggregate(Max('Age')) 我会给你最老的 或者如果你有几件旧的东西 Employee.objects.filter(a few filters).order_by(['-Age'])[0] 使用annotate()而不是aggregate(
我怎样才能做到这一点?谢谢。您不需要聚合,只需按查询集的年龄降序即可
es = Employee.objects.filter(a few filters).aggregate(Max('Age'))
我会给你最老的
或者如果你有几件旧的东西
Employee.objects.filter(a few filters).order_by(['-Age'])[0]
使用
annotate()
而不是aggregate()
谢谢你的回答,但是我必须在这里使用聚合函数。无论如何,最后,使用order\u by-\u-解决了问题!谢谢。你的问题能更准确一点吗?id(主键)和聚合的混合似乎是矛盾的(例如,几个员工可能有相同的最大值(‘年龄’)
age = None
for x in Employee.objects.filter(a few filters).order_by(['-Age']):
if age and age != x.Age:
break
age = x.Age