繁体   English   中英

Django按最频繁的价值排序

[英]Django order by most frequent value

我有一个代表foodtrucks的模型。

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')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM