我有一个模型整数字段称为阈值。
我需要得到总计SUM阈值,无论负值如何。
vote_threshold
100
-200
-5
result = 305
现在我正在这样做。
earning = 0
result = Vote.objects.all().values('vote_threshold')
for v in result:
if v.vote_threshold > 0:
earning += v.vote_threshold
else:
earning -= v.vote_threshold
什么是更快更妥当的方法呢?
use abs https://docs.djangoproject.com/en/3.0/ref/models/database-functions/#absDjango 中的函数
from django.db.models.functions import Abs
from django.db.models import Sum
<YourModel>.objects.aggregate(s=Sum(Abs("vote_threshold")))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)