如何在django中使用过滤器进行聚合

时间:2015-04-08 12:37:21

标签: python django django-orm

我需要在Django ORM中运行以下SQL查询。

select min(time) from serverName where server_id=4912;

我在Django ORM中执行以下操作。

models.ServerName.objects.filter(server_id=ServerName.id).values(Min('time'))

我收到错误'Min' object has no attribute 'split'。有没有办法在过滤器上进行聚合。

1 个答案:

答案 0 :(得分:1)

您需要使用queryset的聚合方法和模型聚合函数。

from django.db.models import Min
models.ServerName.objects.filter(server_id=ServerName.id).aggregate(Min('time'))

有关详细信息,请参阅https://docs.djangoproject.com/en/1.8/topics/db/aggregation/