Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Django/AggregateFunction

From ZeroWiki

count

Django에서 기본적으로 count 함수를 통해 레코드 개수를 셀 수 있다. 다음은 위험 관리 보고서가 몇 개인지 얻어온다.

RiskReport.objects.count()

max, min

Django에서 기본적으로 제공하는 함수는 없다. 대신 order_by를 이용해서 최상위 레코드만 뽑는 방법을 사용할 수 있다. 다음은 가장 비싼 위험 저감 대책이 얼마인지 알아낸다.

Control.objects.values('cost').order_by('cost')[0:1].get()

sum, average

Django에서 기본적으로 제공하는 함수는 없다. 원하는 레코드 집합을 얻어온 다음, python을 이용해서 구하는 방법을 사용할 수 있다. 다음은 위험 결과 손실액 합계를 얻어오는 함수이다.

def sum():
    for c in Consequence.objects.values('loss'):
       result= c.values()[0]
    return result

group by

Django에서 지원하지 않는다. SQL문을 직접 수행하여 결과를 얻을 수는 있다.


django/Example