Subject Re: [IBO] IBO 3.6 query parser makes mistakes with comments
Author Helen Borrie
At 12:52 PM 30-08-01 +0200, you wrote:
> >>>>> On Thu, 30 Aug 2001 20:41:30 +1000, Helen Borrie <helebor@...> said:
>
> >> from vacancyturnaroundtimereport
> >>
> >> join VacancyOverView(vacancyturnaroundtimereport.companyid,
> >> vacancyturnaroundtimereport.vacancyid) on 1=1
>
> HB> This isn't valid join syntax.
>
> HB> The join syntax is
>
> HB> select a.Something ... , b.somethingelse...
>
> HB> from aTable a join bTable b on a.Keycolumn = b.Keycolumn
>
> HB> and
>
> HB> "on 1=1" would have no meaning to the IBO parser or to the
> HB> server.
>
>I use that syntax a lot with stored procedures (well, actually I use a
>LEFT JOIN), and I have never had problems! It must be something
>else...

Nope. The IBO parser recognises the two IB (standard) join syntaxes:

SQL-92 as I described above

and

SQL-89 (implicit join)

...
from aTable a, bTable b
where a.KeyColumn = b.KeyColumn
and a.xyz='value'
and b.pqr = <expression>

etc.

In IBO, with the implicit join syntax, you need to remove the join criteria from the WHERE clause and place it into JoinLinks, viz.

...
from aTable a, bTable b
where a.xyz='value'
and b.pqr = <expression>

and, in JoinLinks:

aTable.KeyColumn = bTable.KeyColumn

rgds,
Helen

All for Open and Open for All
InterBase Developer Initiative ยท http://www.interbase2000.org
_______________________________________________________