Update FAQ.

This commit is contained in:
Bruce Momjian 2001-01-22 06:27:41 +00:00
parent 5f93794f1e
commit 505cdd5873
2 changed files with 27 additions and 17 deletions

17
doc/FAQ
View File

@ -948,15 +948,20 @@ SELECT *
4.24) How do I do an outer join?
PostgreSQL 7.1 and later supports outer joins. Here is an example:
PostgreSQL 7.1 and later supports outer joins. Here are two examples:
SELECT *
FROM t1 LEFT OUTER JOIN t2 ON (t1.col = t2.col);
or
SELECT *
FROM t1 LEFT OUTER JOIN t2 USING (col);
This will join t1.col to t2.col, and return any unjoined rows in t1
with NULL values for t2 columns. A RIGHT join would return unjoined
rows of table t2. A FULL join would return unjoined rows from t1 and
t2. The word OUTER is optional and is assumed in LEFT, RIGHT, and FULL
joins. Ordinary joins are called INNER joins.
These identical queries join t1.col to t2.col, and return any unjoined
rows in t1. A RIGHT join would return unjoined rows of table t2. A
FULL join would return unjoined rows from t1 and t2. The word OUTER is
optional and is assumed in LEFT, RIGHT, and FULL joins. Ordinary joins
are called INNER joins.
In previous releases, outer joins can be simulated using UNION and NOT
IN. For example, when joining tab1 and tab2, the following query does
an outer join of the two tables:

View File

@ -1224,21 +1224,26 @@ Lobby your company to join W3C, see http://www.w3.org/Consortium
<H4><A name="4.24">4.24</A>) How do I do an <I>outer</I> join?<BR>
</H4>
<P>PostgreSQL 7.1 and later supports outer joins. Here is an
example:</P>
<P>PostgreSQL 7.1 and later supports outer joins. Here are two
examples:</P>
<PRE>
SELECT *
FROM t1 LEFT OUTER JOIN t2 ON (t1.col = t2.col);
</PRE>
or
<PRE>
SELECT *
FROM t1 LEFT OUTER JOIN t2 USING (col);
</PRE>
This will join t1.col to t2.col, and return any unjoined rows in t1
with <SMALL>NULL</SMALL> values for t2 columns. A
<SMALL>RIGHT</SMALL> join would return unjoined rows of table t2. A
<SMALL>FULL</SMALL> join would return unjoined rows from t1 and t2.
The word <SMALL>OUTER</SMALL> is optional and is assumed in
<SMALL>LEFT</SMALL>, <SMALL>RIGHT</SMALL>, and <SMALL>FULL</SMALL>
joins. Ordinary joins are called <SMALL>INNER</SMALL> joins.<BR>
<BR>
In previous releases, outer joins can be simulated using
These identical queries join t1.col to t2.col, and return any
unjoined rows in t1. A <SMALL>RIGHT</SMALL> join would return
unjoined rows of table t2. A <SMALL>FULL</SMALL> join would return
unjoined rows from t1 and t2. The word <SMALL>OUTER</SMALL> is
optional and is assumed in <SMALL>LEFT</SMALL>,
<SMALL>RIGHT</SMALL>, and <SMALL>FULL</SMALL> joins. Ordinary joins
are called <SMALL>INNER</SMALL> joins.</P>
<P>In previous releases, outer joins can be simulated using
<SMALL>UNION</SMALL> and <SMALL>NOT IN</SMALL>. For example, when
joining <I>tab1</I> and <I>tab2,</I> the following query does an
<I>outer</I> join of the two tables:<BR>