如何在Django中按值范围过滤查询对象(DecimalFIeld)?

时间:2020-04-07 12:32:32

标签: django django-models

我有一个带有DecimalField的Django模型。

class SomeModel(models.Model):
    decimal_field = models.DecimalField()

我想获取所有模型实例,这些实例的字段值在例如5.010.0。我已经读过Django docs section about queries,但没有找到解决方法。我该如何编写查询SomeModel.objects.filter(?)

2 个答案:

答案 0 :(得分:2)

您应该使用__gt __gte __lt __lte field lookups,它对应于大于,大于或等于,小于,小于或等于,因此您要执行的查询应类似于:

SomeModel.objects.filter(decimal_field__gte=lower_limit, decimal_field__lte=upper_limit)

答案 1 :(得分:1)

使用the range field lookup

SomeModel.objects.filter(decimal_field__range=(lower_limit, upper_limit))
相关问题