Re: subquery in FROM must have an alias
От | Stephan Szabo |
---|---|
Тема | Re: subquery in FROM must have an alias |
Дата | |
Msg-id | 20080928071213.G14875@megazone.bigpanda.com обсуждение исходный текст |
Ответ на | subquery in FROM must have an alias ("Ashutosh Chauhan" <ashutosh.chauhan@gmail.com>) |
Ответы |
Re: subquery in FROM must have an alias
|
Список | pgsql-general |
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 по дате отправления: