2016-07-05 3 views
0
points = Session.query(TeamMatchStats) \ 
    .join(TeamMatchStats.match) \ 
    .join(Match.league) \ 
    .filter(League.season == self.season) \ 
    .filter(TeamMatchStats.team == team) \ 
    .filter(Match.date <= date).limit(7).subquery() 

points = Session.query(func.avg(points)) 

한도를 적용해야하는 열의 평균을 계산하려면이 두 가지 쿼리에 어떤 문제가 있습니까?SQLAlchemy에서 하위 쿼리의 평균 계산하기

+0

'avg'는 열이 아닌 테이블에 적용됩니다. – univerio

답변

3

avg은 열과 함께 사용해야합니다. SQLAlchemy의 하위 쿼리는 핵심 선택 항목이므로 열에 액세스하려면 .c을 사용해야합니다. 여기에 나는 TeamMatchStats는 점 열이 가정

points = Session.query(func.avg(points.c.points)) 
관련 문제