Re: nested query problem

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: David Gauthier <davegauthierpg(at)gmail(dot)com>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: nested query problem
Date: 2018-09-06 21:11:37
Message-ID: 19947.1536268297@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

David Gauthier <davegauthierpg(at)gmail(dot)com> writes:
> I'm having trouble with this query...

> select sr.sqf_id, sr.status, fse.perl_sub_name, fse.end_datetime
> from
> sqf_runs sr,
> (select perl_sub_name, end_datetime from flow_step_events_view where
> sqf_id = sr.sqf_id order by 2 limit 1) fse
> where sr.userid='foo';

> ERROR: invalid reference to FROM-clause entry for table "sr"
> LINE 4: ...atetime from flow_step_events_view where sqf_id = sr.sqf_id ...
> ^
> HINT: There is an entry for table "sr", but it cannot be referenced from
> this part of the query.

If you actually meant to access the outer "sqf_runs" RTE from the
sub-query, you need to mark it LATERAL:

select sr.sqf_id, sr.status, fse.perl_sub_name, fse.end_datetime
from
sqf_runs sr,
lateral (select perl_sub_name, end_datetime from flow_step_events_view where
sqf_id = sr.sqf_id order by 2 limit 1) fse
where sr.userid='foo';

regards, tom lane

In response to

Browse pgsql-general by date

  From Date Subject
Next Message David Gauthier 2018-09-06 21:15:53 Re: nested query problem
Previous Message Paul Jungwirth 2018-09-06 21:10:10 Re: nested query problem