Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通过使用django orm的count(*)进行分组_Django_Django Orm - Fatal编程技术网

通过使用django orm的count(*)进行分组

通过使用django orm的count(*)进行分组,django,django-orm,Django,Django Orm,使用以下型号: class Day(models.Model): date = models.DateField( unique=True, null=False, blank=False, ) class Reservation(models.Model): user = models.ForeignKey( User, null=False, blank=False,

使用以下型号:

class Day(models.Model):
    date = models.DateField(
        unique=True,
        null=False,
        blank=False,
    )


class Reservation(models.Model):
    user = models.ForeignKey(
        User,
        null=False,
        blank=False,
        related_name='reservations',
        verbose_name=_('Utilisateur'),
    )
    day = models.ForeignKey(
        Day,
        null=False,
        blank=False,
        related_name='reservations',
    )
要获取预订数量低于或等于5的天数ID,我需要:

SELECT day_id
FROM meal_reservation
GROUP BY day_id
HAVING count(*) <= 5
选择日期\u id
从餐厅预订
按天分组\u id

让count(*)阅读有关使用组合的文档,这就是您需要的:

from django.db.models import Count

Reservation.objects.values('day').annotate(cnt=Count('id')).filter(cnt__lte=5)

谢谢,我尝试不使用.valuesgotta do
从django.db.models导入计数