用 Django 计算两列之间的差异

count after difference between two columns with django

我有一个 table 包含以下数据。

table_1

col_a col_b
1 2
0 1
2 0

我想加a加b。我可以用注释来做到这一点:

table_1.objects.annotate(diff=F('col_a ')+F('col_b '))

我不能做的是应用过滤器。 例子。 计算 col_a + col_b 大于 2 的地方:

想要的结果:1

你能帮帮我吗?

您可以过滤diff,然后统计记录数:

from django.db.models import F

table_1.objects.annotate(
    <strong>diff=F('col_a')+F('col_b')</strong>
).filter(
    <strong>diff__gt=2</strong>
).count()