Python Django按最频繁值排序

Python Django按最频繁值排序,python,sql,django,django-models,django-orm,Python,Sql,Django,Django Models,Django Orm,我有一个代表食物垃圾的模型 class FoodTruck(models.Model): name = models.CharField(max_length=30) location = models.TextField() creation_date = models.DateTimeField(default=datetime.now) start_date = models.DateTimeField(null=True, blank=True)

我有一个代表食物垃圾的模型

class FoodTruck(models.Model):
    name = models.CharField(max_length=30)
    location = models.TextField()
    creation_date = models.DateTimeField(default=datetime.now)
    start_date = models.DateTimeField(null=True, blank=True)

    def __unicode__(self):
      return self.name
此表中将有许多行具有相同的名称(但位置不同)。在我看来,我想按名称对列表进行排序(出现率最高)

示例表:

name | location | creation_date | start_date
clover | ABC | ...
chens | XYZ | ...
clover | ABC | ...

我的目标是列出食品卡车以及它们在过去30天内在所有地点出现的次数,首先按最频繁的位置排序。

这是一项汇总工作

from django.db.models import Count
FoodTruck.objects.values_list('name').annotate(truck_count=Count('name')).order_by('-truck_count')
Count('*')
在表达式中似乎也适用于我。