Django 查询集 - 查找两个查询集之间的百分比

Django Query Sets - Finding Percentage between two QuerySets

我有两个查询集 -

>>> region_carrier_groupby_total =
<QuerySet [{'region_carrier': 'tc2 - rc2', 'DID_Count': 2}, {'region_carrier': 'tc1 - rc1', 'DID_Count': 16}]>


>>> region_carrier_groupby_available =
<QuerySet [{'region_carrier': 'tc2 - rc2', 'DID_Count': 1}, {'region_carrier': 'tc1 - rc1', 'DID_Count': 14}]>

这里的 objective 是为了找到 DID 计数的可用百分比 region_carrier 分组。 例如-

region_carrier : tc1-rc1, 百分比 DID_Count = (14/16)*100 region_carrier : tc2 - rc2, 百分比 DID_Count = (1/2)*100

所以我想你想用代码而不是 sql:

total_counter = {}
for item in region_carrier_groupby_total:
    total_counter[item['region_carrier']] = item['DID_Count']

total_available = {}
for item in region_carrier_groupby_available:
    total_available[item['region_carrier']] = item['DID_Count']

result = {}
for key, total in total_counter.items():
    result[key] = total_available.get(key, 0) / total