Как сравнить значение 2 полей в Django QuerySet? - PullRequest
7 голосов
/ 28 апреля 2009

У меня есть модель Django, подобная этой:

class Player(models.Model):
    name = models.CharField()
    batting = models.IntegerField()
    bowling = models.IntegerField()

Каким будет Django QuerySet, эквивалентный следующему SQL?

SELECT * FROM player WHERE batting > bowling;

1 Ответ

15 голосов
/ 28 апреля 2009

В Django 1.1 вы можете сделать следующее:

players = Player.objects.filter(batting__gt=F('bowling'))

Подробнее см.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...