Re: Change JOIN tutorial to focus more on explicit joins

Thomas Munro <thomas.munro@gmail.com>

From: Thomas Munro <thomas.munro@gmail.com>
To: David Steele <david@pgmasters.net>
Cc: Jürgen Purtz <juergen@purtz.de>, Peter Eisentraut <peter.eisentraut@enterprisedb.com>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>, "David G. Johnston" <david.g.johnston@gmail.com>
Date: 2021-03-15T02:47:15Z
Lists: pgsql-hackers, pgsql-docs
On Thu, Mar 11, 2021 at 2:06 AM David Steele <david@pgmasters.net> wrote:
> On 12/1/20 3:38 AM, Jürgen Purtz wrote:
> > OK. Patch attached.

+    Queries which access multiple tables (including repeats) at once are called

I'd write "Queries that" here (that's is a transatlantic difference in
usage; I try to proofread these things in American mode for
consistency with the rest of the language in this project, which I
probably don't entirely succeed at but this one I've learned...).

Maybe instead of "(including repeats)" it could say "(or multiple
instances of the same table)"?

+    For example, to return all the weather records together with the
location of the
+    associated city, the database compares the <structfield>city</structfield>
     column of each row of the <structname>weather</structname> table with the
     <structfield>name</structfield> column of all rows in the
<structname>cities</structname>
     table, and select the pairs of rows where these values match.

Here "select" should agree with "the database" and take an -s, no?

+    This syntax pre-dates the <literal>JOIN</literal> and <literal>ON</literal>
+    keywords.  The tables are simply listed in the <literal>FROM</literal>,
+    comma-separated, and the comparison expression added to the
+    <literal>WHERE</literal> clause.

Could we mention SQL92 somewhere?  Like maybe "This syntax pre-dates
the JOIN and ON keywords, which were introduced by SQL-92".  (That's a
"non-restrictive which", I think the clue is the comma?)



Commits

  1. doc: Prefer explicit JOIN syntax over old implicit syntax in tutorial

  2. doc: Change table alias names to lower case in tutorial chapter

  3. doc: Fix whitespace issue in PDF

  4. doc: Use tags consistently in the tutorial chapter