STUDY/Python

QuerySet Method | Aggregate

nicesugi 2022. 11. 7. 17:30

https://docs.djangoproject.com/ko/4.1/topics/db/aggregation/

 

Aggregation | Django 문서 | Django

Django The web framework for perfectionists with deadlines. Toggle theme (current theme: auto) Toggle theme (current theme: light) Toggle theme (current theme: dark) Toggle Light / Dark / Auto color theme Overview Download Documentation News Community Code

docs.djangoproject.com



이전에 값의 평균과 최대값을 구하기 위해 사용해 본 적 있으나
다양하게 있는 것 같아서 알아봄.



우선, 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