当前位置: 首页 > 面试题库 >

Django:通过查询计算列值的总和

柴琦
2023-03-14
问题内容

我有一个模特

class ItemPrice( models.Model ):
     price = models.DecimalField ( max_digits = 8, decimal_places=2 )
     ....

我试图这样做来计算此查询price集中的总和:

items = ItemPrice.objects.all().annotate(Sum('price'))

此查询有什么问题?还是有其他方法可以计算price列总和?

我知道这可以通过在queryset上使用for循环来完成,但是我需要一个优雅的解决方案


问题答案:

你可能正在寻找 aggregate

from django.db.models import Sum

ItemPrice.objects.aggregate(Sum('price'))


 类似资料:
  • 问题内容: 我敢肯定这是一个微不足道的操作,但是我不知道它是如何完成的。 肯定有比这更聪明的东西: 我正在寻找将它们全部添加到一个查询中,例如: 如何使用值列表过滤Django查询? 问题答案: 从Django文档中:

  • 问题内容: 最近在一次采访中我遇到了编程问题。 有2个链接列表。每个节点存储一个从1到9的值(指示数字的一个索引)。因此123将是链表1-> 2-> 3 任务是创建一个函数: 这将返回2个链表争论中的值之和。 如果数组a为:1-> 2-> 3-> 4 数组b为:5-> 6-> 7-> 8 答案应该是:6-> 9-> 1-> 2 这是我的算法: 遍历a和b中的每个节点,获取作为整数的值并将其相加。使

  • 问题内容: 我有一个表,其中有两列开始时间和结束时间。我能够计算每一行的持续时间,但我也想获得总持续时间。这该怎么做。 谢谢 问题答案: 您的列的数据类型为TIMESTAMP,如下所示: 从一个时间戳减去另一个时间戳会导致一个INTERVAL数据类型: 并且不能对INTERVAL数据类型求和。这是一个令人讨厌的限制: 为了规避此限制,您可以使用秒数进行转换和计算,如下所示: 然后它们是可以累加的普

  • 我试图建立MySQL查询与多个连接,其中加入的值的总和。有3个表:保管人,帐户和存款。账户和存款通过客户的customer_id字段连接到客户。在查询结束时,所有客户都按group_id分组: 问题是:连接的行重复,而我必须进行一些分析:汇总所有存款金额-您可以在这里看到我针对存款金额的解决方法。但真正的问题是如何计算“客户的首次存款”。在对结果进行分组之前,我们可能会看到: 所以,我需要的是总和

  • 问题内容: 我想要一个带有计算字段的模型,可以将其应用于排序。例如,假设我有以下模型: 我想要一个D和E字段,这些字段由以下公式计算得出: D = A-B E = A-X(其中X是模型C相关记录的字段) 如果我不需要应用排序,则实现此操作将很简单。我只是将属性添加到模型类。但是,我需要按这些字段排序。 一种解决方案是将所有记录提取到内存中并在那里进行排序,我认为这是不得已的方法(这会破坏有关分页的

  • 本文向大家介绍MySQL的查询计划中ken_len的值计算方法,包括了MySQL的查询计划中ken_len的值计算方法的使用技巧和注意事项,需要的朋友参考一下 key_len的含义 在MySQL中,可以通过explain查看SQL语句所走的路径,如下所示: 其中,key_len表示使用的索引长度,是以字节为单位。在上面的例子中,由于int型占用4个字节,而索引中只包含了1列,所以,key_len是