On Fri, 31 Oct 2003, Neil Zanella wrote: > Hello, > > I would like to ask the about the following... > > PostgreSQL allows tables resulting from subselects to be renamed with > an optional AS keyword whereas Oracle 9 will report an error whenever > a table is renamed with the AS keyword. Furthermore, in PostgreSQL > when the result of a subselect is referenced in an outer select > it is required that the subselect result be named, whereas this > is not true in Oracle. I wonder what standard SQL has to say > about these two issues. In particular: > > 1. Does standard SQL allow an optional AS keyword for (re/)naming > tables including those resulting from subselects. > > and > > 2 Why must a subselect whose fields are referenced in an outer query > be explicitly named in PostgreSQL when it is not necessary in Oracle.
I believe the section in question of SQL92 that you're asking about says explicitly that a table reference from a derived table should look like: <derived table> [ AS ] <correlation name> [ <left paren> <derived column list> <right paren> ] where <derived table> is a table subquery. It's possible that SQL99 changes this, but in SQL92 at least, it looks like the correlation name is not optional (although the AS keyword is). ---------------------------(end of broadcast)--------------------------- TIP 7: don't forget to increase your free space map settings