Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/20.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/9.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查询中获取多个值?_Django_Postgresql_Django Orm - Fatal编程技术网

如何从一个django orm查询中获取多个值?

如何从一个django orm查询中获取多个值?,django,postgresql,django-orm,Django,Postgresql,Django Orm,我们如何从单个查询中获得当月&team=3计数,上月&team=3计数?您可以使用truncmount获得每月筛选的数据。然后可以生成第一个和最后一个索引值 class Test(ModelBase): team = models.IntegerField(null=True) id created_at team 1 2018-02-14 10:33:46.307214+05:30 1 2 20

我们如何从单个查询中获得当月&team=3计数,上月&team=3计数?

您可以使用
truncmount
获得每月筛选的数据。然后可以生成第一个和最后一个索引值

class Test(ModelBase):
     team = models.IntegerField(null=True)



id    created_at                           team
 1     2018-02-14 10:33:46.307214+05:30    1
 2     2018-02-24 10:41:40.307681+05:30    1
 3     2018-03-14 12:00:02.748088+05:30    1
 4     2018-03-12 18:05:33.598297+05:30    3
 5     2018-03-12 18:04:00.694774+05:30    3
 6     2018-04-14 11:24:48.554993+05:30    3
 7     2018-04-14 11:42:27.442441+05:30    3
 8     2018-05-11 15:53:21.528813+05:30    3
 9     2018-05-08 15:49:58.684201+05:30    3

您可以使用
truncmount
获得每月筛选的数据。然后可以生成第一个和最后一个索引值

class Test(ModelBase):
     team = models.IntegerField(null=True)



id    created_at                           team
 1     2018-02-14 10:33:46.307214+05:30    1
 2     2018-02-24 10:41:40.307681+05:30    1
 3     2018-03-14 12:00:02.748088+05:30    1
 4     2018-03-12 18:05:33.598297+05:30    3
 5     2018-03-12 18:04:00.694774+05:30    3
 6     2018-04-14 11:24:48.554993+05:30    3
 7     2018-04-14 11:42:27.442441+05:30    3
 8     2018-05-11 15:53:21.528813+05:30    3
 9     2018-05-08 15:49:58.684201+05:30    3
您可以使用允许使用或条件执行查询的:

from django.db.models.functions import TruncMonth
from django.db.models import Sum

queryset = Test.objects.all().annotate(
             month=TruncMonth('created_at')).values('month').annotate(
             number=Sum('team'))
您可以使用允许使用或条件执行查询的:

from django.db.models.functions import TruncMonth
from django.db.models import Sum

queryset = Test.objects.all().annotate(
             month=TruncMonth('created_at')).values('month').annotate(
             number=Sum('team'))

您只需使用链查询集进行筛选。只需获取您的
当前月份
上个月
(它应该是整数)和


您只需使用链查询集进行筛选。只需获取您的
当前月份
上个月
(它应该是整数)和



你能发布模型类吗?当然,我会添加模型类。你能发布模型类吗?当然,我会添加模型类。不,我想要这个月的输出,团队3的总计数是5不,我想要这个月的输出,团队3的总计数是5,我们可以从这个查询中得到每个月的数据吗?通过上面的查询,我们一起过滤。但是我们可以通过一个查询为当前月份、最后一个月份执行此操作吗?@BharatBittu您可以添加
order\u by('created\u at')
这将按日期对输出进行排序。这没关系:)非常感谢:)类似于这样的pubs=Publisher.objects.annotate(低于\u 5=低于\u 5)。annotate(高于\u 5=高于\u 5)我们可以从这个查询中得到每个月的数据吗?通过上面的查询,我们将一起进行筛选。但是我们可以通过一个查询为当前月份、最后一个月份执行此操作吗?@BharatBittu您可以添加
order\u by('created\u at')
这将按日期对输出进行排序。这没关系:)非常感谢:)类似于这样的pubs=Publisher.objects.annotate(低于\u 5=低于\u 5)。annotate(高于\u 5=高于\u 5)运行此查询后,每个月如何获取?只需使用@NeverWalkliner。您不需要链接,只需将两个条件放在一个调用中即可。运行此查询后,每个月如何获取?只需使用@NeverWalkliner。您不需要链接,只需将两个条件放在一个调用中即可。