https://docs.djangoproject.com/ko/4.1/topics/db/aggregation/
이전에 값의 평균과 최대값을 구하기 위해 사용해 본 적 있으나
다양하게 있는 것 같아서 알아봄.
우선, queryset의 전체row에 대한 집계함수를 반환하는 Aggregate는
1. 여러 값을 한번에 구할 수 있음.
from django.db.models import Avg, Max, Min
Book.objects.aggregate(Avg('price'), Max('price'), Min('price'))
# {'price__avg': 34.35, 'price__max': Decimal('81.20'), 'price__min': Decimal('12.99')}
2. 집계함수를 매개변수로 지정하여 사용
Book.objects.aggregate(Avg('price')) # 평균
Book.objects.aggregate(Sum('price')) # 더하기
Book.objects.aggregate(Max('price')) # 최대값
Book.objects.aggregate(Min('price')) # 최소값
3. 결과는 딕셔너리 형태로 반환
반응형
'STUDY > Python' 카테고리의 다른 글
🎄 학습일지 22.12.9 (0) | 2022.12.09 |
---|---|
🎄 학습일지 22.12.8 (0) | 2022.12.08 |
기술면접 스터디(9월27일 : 관심사 분리 | SOLID 원칙) (0) | 2022.09.27 |
Method | get vs post (0) | 2022.09.23 |
3-way handshake (0) | 2022.09.21 |