我想检索表中每个对象的两个字段(它们本身就是聚合)的总和。
以下内容可能会更好地描述我所追求的内容,但会导致字段列表中出现未知列
-错误:
items = MyModel.objects.annotate(
field1=Sum("relatedModel__someField"),
field2=Sum("relatedModel__someField")).extra(
select={"sum_field1_field2": "field1 + field2"})
我还尝试使用 F() 进行字段查找,但这给了我一个无效的 sql 语句。
非常感谢任何有关如何解决此问题的想法。
最佳答案
这就是你想要的吗?
items = MyModel.objects.extra(
select = {'sum_field1_field2': 'SUM(relatedModel__someField) + SUM(relatedModel__someField)'},
)
关于django - 在 Django 中通过 .annotate() 创建的字段上使用 .extra(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4899014/