Подсчитать количество пользователей, у которых общая сумма меньше, чем X:число

У меня есть сумма, допустим, 10000. Я хочу найти, сколько пользователей присутствует в таблице, которые купили что-то на общую сумму меньше или равную 10000.

class SaleTransaction(models.Model):

    trans_id = models.BigAutoField(primary_key=True)
    user = models.ForeignKey(User, on_delete=models.CASCADE, related_name='sales')
    amount = models.FloatField()
    created_at = models.DateTimeField(auto_now_add=True)

Пример:

trans_id user amount created_at
1 12 1200.0 2022-03-12
2 34 5000.0 2022-03-12
3 17 1000.0 2022-03-12
4 29 5000.0 2022-03-12

здесь 4 пользователя купили вещей на общую сумму 12200. Теперь я хочу найти количество пользователей, у которых сумма (от суммы покупок) меньше или равна 10000.

вывод: 2 пользователя, т.е. (5000.0 + 5000.0) <= 10000

Пожалуйста, подскажите, как это можно реализовать в django !!!

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