如何在 Django 数据库请求中进行数学过滤?
Posted
技术标签:
【中文标题】如何在 Django 数据库请求中进行数学过滤?【英文标题】:How do I do a math filter in Django database request? 【发布时间】:2016-10-05 22:36:29 【问题描述】:我有一个模型,它在数据库中有以下列:“更正”和“不正确”。
我想做一个过滤器,只占用 > 80%。
F.e: (修正 * 100 / (修正 + 不正确)) > 80
我该怎么做?
【问题讨论】:
发布你的模型和你的最佳尝试 【参考方案1】:对annotate使用F
(documentation) 表达式,然后对注解进行过滤:
from django.db.models import F
YourModel.objects.annotate(ratio=100*F('corrects')/(F('corrects')+F('incorrects')))
.filter(ratio__gt=80)
【讨论】:
以上是关于如何在 Django 数据库请求中进行数学过滤?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 ListAPIView 中使用 django-filter 对过滤结果进行排序
使用 Bigquery 进行网络分析,如何过滤掉恶意的不良数据,如机器人等