我想要获得以下百分比值:
nomberesteda * 100 / nomberhodor = 0.00
我使用这个查询集:
listilam = MediaSecParnt.objects.filter(date__range=[primary1, primary2]).values(
'withsecondray__name','withdegrey__name','withsecondray_id','withdegrey_id')
.annotate(nomberhodor=Sum('nomberhodor'), nomberesteda=Sum('nomberesteda'), percent=((((F('nomberhodor')*100)/(F('nomberesteda'))))))
这里 :
percent=((((F('nomberhodor')*100)/(F('nomberesteda'))))))
返回百分比值,不带逗号!
nomberhodor列是整数并且与 nomberesteda 相同
结果如下:
<QuerySet [{'nomberhodor': 70, 'nomberesteda': 300, 'percent': 23},
{'nomberhodor': 64, 'nomberesteda': 150, 'percent': 42},
{'nomberhodor': 33, 'nomberesteda': 66, 'percent': 50},
{'nomberhodor': 50, 'nomberesteda': 200, 'percent': 25},
{'nomberhodor': 220, 'nomberesteda': 725, 'percent': 30},
{'nomberhodor': 567, 'nomberesteda': 900, 'percent': 63},
{'nomberhodor': 309, 'nomberesteda': 910, 'percent': 33}]>
它应该是 :
<QuerySet [{'nomberhodor': 70, 'nomberesteda': 300, 'percent': 23.33},
{'nomberhodor': 64, 'nomberesteda': 150, 'percent': 42.66},
{'nomberhodor': 33, 'nomberesteda': 66, 'percent': 50.00},
{'nomberhodor': 50, 'nomberesteda': 200, 'percent': 25.00},
{'nomberhodor': 220, 'nomberesteda': 725, 'percent': 30.34},
{'nomberhodor': 567, 'nomberesteda': 900, 'percent': 63.00},
{'nomberhodor': 309, 'nomberesteda': 910, 'percent': 33.95}]>
芜湖不芜
当年话下
相关分类