Thread: 7.2. Table Expressions suggestion about NATURAL JOIN
http://www.postgresql.org/docs/9.0/static/queries-table-expressions.html http://www.postgresql.org/docs/9.0/static/sql-select.html Respectively: "Finally, NATURAL is a shorthand form of USING: it forms a USING list consisting of all column names that appear in both input tables. As with USING, these columns appear only once in the output table." and "NATURAL is shorthand for a USING list that mentions all columns in the two tables that have the same names." To make that comprehensive you can add something like: "Note that if there is no any "shared" column between tables, then NATURAL JOIN acts like ON TRUE (that is, tables are cross-joined)", because it's not obvious. thanks & regards, greg szpetkowski
2011/5/18 Grzegorz Szpetkowski <gszpetkowski@gmail.com>: > http://www.postgresql.org/docs/9.0/static/queries-table-expressions.html > http://www.postgresql.org/docs/9.0/static/sql-select.html > > Respectively: > > "Finally, NATURAL is a shorthand form of USING: it forms a USING list > consisting of all column names that appear in both input tables. As > with USING, these columns appear only once in the output table." > > and > > "NATURAL is shorthand for a USING list that mentions all columns in > the two tables that have the same names." > > To make that comprehensive you can add something like: "Note that if > there is no any "shared" column between tables, then NATURAL JOIN acts > like ON TRUE (that is, tables are cross-joined)", because it's not > obvious. > > thanks & regards, > greg szpetkowski > My mistake "NATURAL JOIN", better is to just write "NATURAL". thanks & regards, greg szpetkowski
On Tue, May 17, 2011 at 9:47 PM, Grzegorz Szpetkowski <gszpetkowski@gmail.com> wrote: > http://www.postgresql.org/docs/9.0/static/queries-table-expressions.html > http://www.postgresql.org/docs/9.0/static/sql-select.html > > Respectively: > > "Finally, NATURAL is a shorthand form of USING: it forms a USING list > consisting of all column names that appear in both input tables. As > with USING, these columns appear only once in the output table." > > and > > "NATURAL is shorthand for a USING list that mentions all columns in > the two tables that have the same names." > > To make that comprehensive you can add something like: "Note that if > there is no any "shared" column between tables, then NATURAL JOIN acts > like ON TRUE (that is, tables are cross-joined)", because it's not > obvious. Done, with different wording. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company