如何在Django中查询floatfield?

时间:2012-07-19 02:12:07

标签: django django-models

我有一个FloatField,其值可以是22.33405,33.567等。现在,我需要在小数点后最多使用2个位置进行查询,如下所示

#find all objects with value equal to 22.33
ModelName.objects.filter(field = 22.33)

是否可以这样做 - 我可以四舍五入或只取小数后的前2位吗?

感谢

2 个答案:

答案 0 :(得分:7)

试试这个

ModelName.objects.filter(field__gte=22.33, field__lt=(22.33 + 0.01))

ModelName.objects.filter(field__range=(22.33, 22.33 + 0.01))

range lookup

答案 1 :(得分:1)

不直接。如果您需要此级别的准确性,那么您应该使用DecimalField