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

Reply via email to