0
나는 test_id로 테스트 시도 횟수를 그룹화하고 각 테스트 중에서 평균을 얻고 싶은 장고 쿼리를 가지고있다.장고 쿼리 : 주석을 중첩 할 수 있습니까?
test_attempts 테이블은 사용자가 주어진 테스트에서 수행하는 각 테스트 시도를 기록합니다.
average = TestAttempts.objects.values('test_id').annotate(Avg(Count('test_id'))).filter(user_id=id)
나는 다음과 같은 오류가 오전 : '백작'개체가 어떤 속성이없는 '분할'
내가 여기테스트
당 시도의 평균 수를 찾으려면 나의 쿼리입니다원시 SQL을 작성하지 않고도이 문제를 처리 할 수 있습니까?
UPDATE : 여기 당신은 하나의 숫자, 모든 테스트를 통해 시도의 평균 수를 원하는 TestAttemt 모델
class TestAttempts(models.Model):
id = models.IntegerField(primary_key=True)
user_id = models.IntegerField()
test_id = models.IntegerField()
test_grade = models.DecimalField(max_digits=6, decimal_places=1)
grade_date_time = models.DateTimeField()
start_time = models.DateTimeField()
seconds_taken = models.IntegerField()
taking_for_ce_credit = models.IntegerField()
ip_address = models.CharField(max_length=25L)
grade_points = models.DecimalField(null=True, max_digits=4, decimal_places=1, blank=True)
passing_percentage = models.IntegerField(null=True, blank=True)
passed = models.IntegerField()
class Meta:
db_table = 'test_attempts'
정확히 내가 뭘 찾고 있었는지, 다시 한번 당신의 도움에 감사드립니다. 운이없는 문서를 보면서 많은 시간을 보냈습니다. – xXPhenom22Xx
TestAttempt 테이블에는 테스트 테이블과의 관계가 없습니다. 두 번째 옵션을 사용하려고 할 때 먼저 test_id에 의해 그룹화 된 것처럼 보이고 그 다음에는 SQL 오류가 발생합니다. (1064, "SQL 구문에 오류가있어서 MySQL 서버 버전에 해당하는 설명서에서 올바른 구문을 확인하여 'FROM (SELECT'test_attempts'.test_id' AS'test_id', COUNT 'test_attempts'.'id') 'at line 1 ") – xXPhenom22Xx
이것은 장고의 버그처럼 느껴진다. (당신의 질문에 당신의 모델을 넣을 수 있습니까? –