【发布时间】:2023-03-20 14:30:01
【问题描述】:
我有一个表格,其中的数据如下:
Id price date user_id type match_id
_____________________________________________________________________
1 120 2021-03-05 1 credit 1
2 120 2021-03-05 1 credit 1
3 120 2021-03-08 2 credit 2
4 120 2017-06-20 3 credit 2
5 140 2017-06-20 4 debit 2
6 120 2017-06-20 1 credit 2
8 120 2021-03-09 2 credit 1
9 130 2017-06-20 2 credit 1
10 120 2021-03-05 1 debit 2
11 160 2021-03-05 5 debit 1
12 210 2021-03-05 5 credit 1
我真正想要的是根据 userid 和 created_at 在 2021-03-05 至 2021-03-11 之间使用不同的用户,类型为 credit 3 top price users with price sum。
根据此过滤器具有最大价格总和的 3 个顶级用户。我被困在这里,任何人都可以帮我解决这个问题吗??
我拥有的型号:
class PriceLog(models.Model):
user = models.ForeignKey(User, on_delete=models.CASCADE, related_name="price_log")
type = models.CharField(
max_length=10,
choices=(
('credit', 'Credit'),
('debit', 'Debit')
),
)
price = models.IntegerField()
match = models.ForeignKey(Match, on_delete=models.CASCADE, related_name='price_logs', null=True, default=None)
message = models.CharField(max_length=255, default='')
created_at = models.DateTimeField(default=timezone.now)
class Meta:
db_table = 'price_logs'
【问题讨论】:
-
请分享您的模型。
-
@WillemVanOnsem 我现在用模型更新了我的问题..
标签: python python-3.x django django-rest-framework django-orm