Re: change the order of FROM selection to make query work
- From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
- To: "Thomas Peter" <thomas(at)braindumped(dot)com>
- Cc: "pgsql-general(at)postgresql(dot)org" <pgsql-general(at)postgresql(dot)org>
- Subject: Re: change the order of FROM selection to make query work
- Date: Tue, 26 Sep 2006 10:19:29 -0400
- Message-id: <25383(dot)1159280369(at)sss(dot)pgh(dot)pa(dot)us>
"Thomas Peter" <thomas(at)braindumped(dot)com> writes:
> the full code that does produce the error (and this error can be resolved
> as in OP described) is:
Never oversimplify a bug report.
> FROM ticket as t, permission as perm, enum as p
> LEFT OUTER JOIN ticket_custom c ON (t.id = c.ticket AND c.name =
> 'fachabteilung')
The above is, plain and simple, wrong. According to the SQL spec,
JOIN binds more tightly than comma in a FROM-list, so what you had was
FROM ..., (enum as p
LEFT OUTER JOIN ticket_custom c ON (t.id = c.ticket AND c.name =
'fachabteilung'))
which of course fails because only p and c are visible in the JOIN's
ON condition. You fixed it by moving "t" to become part of the JOIN
structure.
I was aware that MySQL parses this sort of structure wrongly, but it's
disappointing to hear that sqlite does too :-(
regards, tom lane
Home |
Main Index |
Thread Index