Tengo un modelo simple como este:
class Order(models.Model):
created = model.DateTimeField(auto_now_add=True)
total = models.IntegerField() # monetary value
Y quiero generar un desglose mes a mes de:
- Cuantas ventas hubo en un mes (
COUNT
) - El valor combinado (
SUM
)
No estoy seguro de cuál es la mejor manera de atacar esto. He visto algunas consultas de selección extra que parecen bastante aterradoras, pero mi mente simple me dice que podría estar mejor simplemente iterando números, comenzando desde un año / mes de inicio arbitrario y contando hasta llegar al mes actual, descartando simples filtrado de consultas para ese mes. Más trabajo de base de datos, ¡menos estrés del desarrollador!
¿Qué tiene más sentido para ti? ¿Existe una buena forma de recuperar una tabla rápida de datos? ¿O mi método sucio es probablemente la mejor idea?
Estoy usando Django 1.3. No estoy seguro de si han agregado una forma más agradable GROUP_BY
recientemente.