Django фильтрует два поля в разных записях с одинаковым значением

В Django у меня есть большой объем данных (реальные данные составляют около десятков тысяч). Я хочу найти все записи с одинаковой суммой доходов и расходов. Что я должен сделать? Mysql:

id income expenses
1 0.00 50.00
2 0.00 43.00
3 50.00 0.00
4 50.00 0.00
5 29.00 0.00
6 23.00 0.00
7 0.00 23.00
8 0.00 5.00
9 0.00 12.00

Я хочу отфильтровать данные 13467. Все суммы расходов и доходов имеют одинаковые данные (за исключением суммы 0.00)

id income expenses
1 0.00 50.00
3 50.00 0.00
4 50.00 0.00
6 23.00 0.00
7 0.00 23.00

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

from django.db.models import F

data = Model.objects.filter(income_field=F("expenses_field_name")).exclude(income_field=0)

тот же вопрос с полем Datetime. Ответ

from itertools import chain

list_id = []
for i in Model.objects.filter(income__gt=0):
    ids = Model.objects.filter(expenses=i.income).values_list("id",flat=True)
    list_id.append(ids)

#flatten the list of lists
list_id = list(set(chain.from_iterable(list_id)))

Я хочу реализовать эту функцию, но объем моих данных слишком велик, и я не хочу использовать цикл for для ее реализации. Я хочу знать, есть ли более простой способ.

Вернуться на верх