错误:对表“r”的FROM子句条目的无效引用

时间:2018-06-07 20:56:31

标签: sql postgresql join

我正在运行以下查询,但在“ r.teamId ”上收到无效的引用错误。我找到了许多关于此的答案,但大多数建议将隐式连接转换为显式连接。在我的情况下,我认为查询已经显式连接。如何解决此错误?

select r.teamId,sum(r.amount),count(r.id),sum(r.distance),s.start_date
from runs r inner join ( SELECT team.id,league.start_date,league.end_date FROM league join team 
ON league.id =team.league_id where r.teamId = team.id) s
on s.id = r.teamId
where r.teamId IS Not NULL 
group by r.teamId,s.start_date
order by sum(r.amount) desc; 

1 个答案:

答案 0 :(得分:1)

摆脱无用的括号和派生表,然后你不会被错误的别名搞糊涂:

select r.teamId,
       sum(r.amount),
       count(r.id),
       sum(r.distance), 
       l.start_date
from runs r 
  join team on r.teamid = team.id 
  join league l on l.id = team.league_id
where r.teamId IS Not NULL 
group by r.teamId, l.start_date
order by sum(r.amount) desc;