2012-02-26 5 views
0

customer_id 및 일부 다른 필드를 사용하여 invoices 테이블이 있습니다. 각 사용자가 선택한 구매 횟수를 선택해야합니다. invoices.id 대신 invoices.customer_id에 의해장고 GROUP_BY 통해 .annotate()

Invoice.objects.annotate(buy_count=Count('customer')).all() 

그러나이 코드 그룹 및 잘못된 결과를 반환 장고에서

SELECT username, COUNT('customer_id') FROM `invoices` 
LEFT JOIN `auth_user` ON `auth_user`.id = `invoices`.customer_id 
GROUP BY `customer_id`, username 

내가 시도 : SQL에서 그것의해야는 다음과 같습니다. 이

Customer.objects.annotate(buy_count=Count('invoice')).all() 

당신이 청구서의 자신의 카운트 고객의 목록을 얻을 것 :

답변

1

나는 당신이 주변에 뭔가를 켭니다한다고 생각합니다.