Django-按仅返回值和分组
在Django中,如何执行以下SQL:Django-按仅返回值和分组,django,group-by,Django,Group By,在Django中,如何执行以下SQL: select sum(valor_aprovado) as vla from convenios group by ano order by ano 预期结果: sum_value | -------------| 472837446.59| 163438615.51| 448397994.27| 959203234.57| 739555948.32| 我使用以下语法,但我只希望它返回VLA字段,而不是ANO Convenios.obj
select sum(valor_aprovado) as vla
from convenios
group by ano
order by ano
预期结果:
sum_value |
-------------|
472837446.59|
163438615.51|
448397994.27|
959203234.57|
739555948.32|
我使用以下语法,但我只希望它返回VLA字段,而不是ANO
Convenios.objects.values_list('ano').order_by('ano').annotate(vla=Sum('valor_aprovado')
结果:
[(2002, Decimal('36246385105.92')), (2003, Decimal('163442260.52')), (2004, Decimal('447464292.52')), (2005, Decimal('948880015.70')), (2006, Decimal('737373593.32')), (2007, Decimal('1449818896.88')), (2008, Decimal('1812889287.82')), (2009, Decimal('2306375485.81')), (2010, Decimal('8730479758.56')), (2011, Decimal('1662088139.88')), (2012, Decimal('1886396504.43')), (2013, Decimal('535507602.69')), (2014, Decimal('4279003118.70')), (2015, Decimal('1883240765.95')), (2016, Decimal('1245291830.72')), (2017, Decimal('2161176688.18')), (2018, Decimal('1346548803.43'))]
你能帮我吗?
谢谢您可以尝试以下查询
Convenios.objects.values_list('ano').order_by('ano').annotate(vla=Sum('valor_aprovado')).values('vla')
您可以尝试以下查询
Convenios.objects.values_list('ano').order_by('ano').annotate(vla=Sum('valor_aprovado')).values('vla')