我的模型A
和B
是这样的:
class B(models.Model):
x_count = models.IntegerField()
y_count = models.IntegerField()
class A(models.Model):
name = models.CharField()
b = models.ForeignKey(B)
我正在尝试查询A
b
的所有x_count
个实例,其中y_count
和SELECT A.name FROM A, B WHERE A.b = B.id AND B.x_count + B.y_count > 0
的总和为零。像
{{1}}。我怎么能在Django中做到这一点?
答案 0 :(得分:0)
https://docs.djangoproject.com/en/1.8/topics/db/queries/#filters-can-reference-fields-on-the-model可能会有所帮助。
您可以使用它们“将模型字段的值与同一模型上的另一个字段进行比较。”
所以你的查询可能看起来像这样(未经测试)
from django.db.models import F
A.objects.filter(x_count=-F('y_count'))