我正在开发一个项目,并注意到Django Sum()
注释在使用它来创建带有外键的字段的总和时无法正常工作。
例如,当您访问某人可以下订单的网站时。 Order
模型具有指向Visit
模型的链接,因为您可以在一次访问中放置多个订单。但是,来自网站的订单不会访问网站。对于这些订单,访问将为NULL
。当我执行以下操作时,计算不正确(值太高)。
visits = visits.annotate(order_total = Sum('order__total'))
当我将Sum
更改为Avg
时,计算正确完成。对此有合理的解释吗?
答案 0 :(得分:1)
使用
解决它#include <iostream>
#include <chrono>
typedef std::chrono::high_resolution_clock high_resolution_clock;
int main()
{
auto i = high_resolution_clock::now();
std::cout << i.time_since_epoch() << std::endl;
}
原来from pg_utils import DistinctSum
visits = visits.annotate(order_total = DistinctSum('order__total'))
无法处理不同的值。