에서 나는 다음과 같은 모델중첩 집계 함수 장고
class Domain(models.Model):
domain = models.URLField()
web_analytics = models.ManyToManyField('AnalyticsProvider', blank=True)
class AnalyticsProvider(models.Model):
name = models.CharField(max_length=50)
내가 도메인 당 분석의 수를 싶어해야하고이 분석의 숫자를 집계. { "1 개 분석 제공 업체": "520 개 도메인", "이 개 분석 제공 업체": "130 개 도메인", ...}
나는 같은 결과를 얻을 싶어요.
number_web_analytics = Domain.objects.annotate(num_m2m=Count('web_analytics')).annotate(count_domains=Count('num_m2m'))
:
SELECT COUNT(1),"num_m2m" from (SELECT "dashboard_domain"."id_website", COUNT("dashboard_domain_web_analytics"."analyticsprovider_id") AS "num_m2m"
FROM "dashboard_domain" LEFT OUTER JOIN "dashboard_domain_web_analytics"
ON ("dashboard_domain"."id_website" = "dashboard_domain_web_analytics"."domain_id")
GROUP BY "dashboard_domain"."id_website") GROUP BY "num_m2m";
내가 같은 검색어 세트에 이중 주석을 시도 : 내가 SQL 쿼리와 함께 할 관리,하지만 난 장고 ORM을 사용하려면, SQL 쿼리는 다음과
그러나 장고는 다른 하나에 주석을 수행 할 수없는 것 같습니다.
죄송합니다. 나는 그것을 잘 설명하지 않습니다. 이것이 내가 가진 것인데, 이제 분석의 수로 도메인을 그룹화하려고합니다. – fasouto