Re: subquery in FROM must have an alias
От | Ashutosh Chauhan |
---|---|
Тема | Re: subquery in FROM must have an alias |
Дата | |
Msg-id | 54de02ae0809291458y2df00593s94b8aaf715104642@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: subquery in FROM must have an alias (Stephan Szabo <sszabo@megazone.bigpanda.com>) |
Список | pgsql-general |
Thanks to Stephan and Hubert for their replies. Using your answers I was able to solve the problem. It turned out that its a natural join that I wanted. Thanks for quick help, Ashutosh On Sun, Sep 28, 2008 at 10:18, Stephan Szabo <sszabo@megazone.bigpanda.com> wrote: > On Sun, 28 Sep 2008, Ashutosh Chauhan wrote: > >> Hi all, >> >> This has been asked before and answered as well. >> http://archives.postgresql.org/pgsql-sql/2007-12/msg00002.php but I >> still cant figure out why postgres throws this error message even when >> I have provided the aliases. My query: >> >> select a,b >> from (billing.item JOIN ( >> select * >> from ( billing.invoice JOIN billing.customer >> on (id_customer_shipped = customer_uid and >> address = 'pgh' )) >> as temp2 )) >> as temp; >> >> I have two from clauses so I have provided two corresponding alias >> names for those two from clauses. > > If you break the above down a bit, you have: > > select a,b > from > ( > billing.item join > (select * from > ( > billing.invoice join > billing.customer > on (id_customer_shipped = customer_uid and address='pgh') > ) > as temp2 > ) > ) > as temp; > > What the system is complaining about is the subselect (select * from ... ) > not having an alias. You've aliased the billing.invoice join > billing.customer one and (billing.item join (...)) one, but not the > subselect. In fact, I believe the two aliases you're using aren't strictly > necessary. Also, the above appears to be missing the condition for the > outermost join. > > Maybe something like the following will work with a filled in on > condition: > > select a,b > from > ( > billing.item join > (select * from > ( > billing.invoice join > billing.customer > on (id_customer_shipped = customer_uid and address='pgh') > ) > ) > as temp > on (...) > ) > > >
В списке pgsql-general по дате отправления: