다음과 같은 간단한 모델이 있습니다.
class Order(models.Model):
created = model.DateTimeField(auto_now_add=True)
total = models.IntegerField() # monetary value
그리고 다음과 같은 월별 분석을 출력하고 싶습니다.
- 한 달 동안 판매 된 횟수 (
COUNT
) - 결합 된 값 (
SUM
)
이것을 공격하는 가장 좋은 방법이 무엇인지 모르겠습니다. 상당히 무섭게 보이는 추가 선택 쿼리를 보았지만 내 단순한 마음은 임의의 시작 연도 / 월에서 시작하여 현재 달에 도달 할 때까지 숫자를 반복하는 것이 더 나을 수 있다고 말합니다. 해당 월에 대한 쿼리 필터링. 더 많은 데이터베이스 작업-개발자 스트레스 감소!
당신에게 가장 의미있는 것은 무엇입니까? 빠른 데이터 테이블을 다시 가져올 수있는 좋은 방법이 있습니까? 아니면 내 더러운 방법이 아마도 최선의 생각일까요?
Django 1.3을 사용하고 있습니다. GROUP_BY
최근에 더 좋은 방법을 추가했는지 확실하지 않습니다 .