Re: psql 7.3.4 disagrees with NATURAL CROSS JOIN

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Christopher Kings-Lynne <chriskl(at)familyhealth(dot)com(dot)au>
Cc: Jonathan Scott <jwscott(at)vanten(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: psql 7.3.4 disagrees with NATURAL CROSS JOIN
Date: 2004-05-07 02:26:13
Message-ID: 27528.1083896773@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Christopher Kings-Lynne <chriskl(at)familyhealth(dot)com(dot)au> writes:
> Just a note for the hackers, Jonathan (I think :) ) talked to me about
> this on the irc channel - we couldn't figure this one out. Seems that
> pg_dump produces NATURAL CROSS JOIN in the dump of a view, but the pgsql
> grammar does not appear to allow it.

Hm. The syntax NATURAL CROSS JOIN is specifically disallowed by SQL99
and our parser (see attached SQL99 excerpt). If pg_dump produces that
in a view dump then that's a bug, but this test case doesn't let me see
it happen, because the parser rejects the given view definition. Do
you happen to have the original input that created the view?

regards, tom lane

<joined table> ::=
<cross join>
| <qualified join>
| <natural join>
| <union join>

<cross join> ::=
<table reference> CROSS JOIN <table primary>

<qualified join> ::=
<table reference> [ <join type> ] JOIN <table reference>
<join specification>

<natural join> ::=
<table reference> NATURAL [ <join type> ] JOIN <table primary>

...

<join type> ::=
INNER
| <outer join type> [ OUTER ]

<outer join type> ::=
LEFT
| RIGHT
| FULL

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Jonathan Scott 2004-05-07 02:58:55 Re: psql 7.3.4 disagrees with NATURAL CROSS JOIN
Previous Message Tom Lane 2004-05-07 02:02:22 Re: ALTER TABLE TODO items