Re: joint prefetching narrows result set

From: Andrus Adamchik (andru..bjectstyle.org)
Date: Thu Apr 20 2006 - 02:40:27 EDT

  • Next message: Ayhan Kondoz: "Bug in cayenne 1.2B1 and 1.2B2"

    On Apr 20, 2006, at 4:51 AM, Robert Zeigler wrote:

    > Hm. That's interesting... I haven't looked at the queries generated
    > for
    > the new stuff... if I was writing raw sql, I probably would have
    > done a
    > left outer join (but maybe not enough db vendors support it???) and
    > used
    > an "ON" clause for the join, rather than a where clause... I always
    > thought that "Where" is for winnowing results, and "on" is for joining
    > tables...? I'll confess to being curious as to the rational for using
    > "where" for a joint prefetch rather than "on".

    ON is supposedly a standard SQL syntax for both INNER and OUTER
    joins, however historically most databases did the joins as a part of
    WHERE clause. For instance an OUTER join on Oracle could be done like
    this:

    select t1.* from painting t1, artist t2
    where t1.artist_id = t2.artist_id (+)

    We'll be considering the "standard" syntax of with ON when we start
    work on OUTER joins support in relationships.

    Andrus



    This archive was generated by hypermail 2.0.0 : Thu Apr 20 2006 - 02:40:54 EDT