news <[EMAIL PROTECTED]> wrote on 12/19/2005 11:37:41 AM: > Hi Shawn, > > > That means that MySQL supports the means to determine what rows are in > > each area of our diagram based on the direction of the join (INNER, LEFT, > > or RIGHT), the conditions declared in the ON clause, and any filtering of > > the results based on the WHERE conditions. > > Based on the experience I posted on JOINs can you tell a special case where > RIGHT can't be replaced by LEFT JOINs ? > To me it looks the same and both syntaxes are equally readable. > > > >the original summations. Let's straighten out your understanding of JOINs > > before we delve into GROUP BY and WITH ROLLUP much further, ok? > > Perfect. I stay on the JOIN for now. > > Sandy >
Off the top of my head, I cannot imagine a query that uses RIGHT JOINs or combinations of INNER JOINs and RIGHT JOINs that could not be transformed into using LEFT JOINs or combinations of LEFT and INNER JOINs. Personally, I try to use only INNER JOIN, LEFT JOIN, and CROSS JOIN when building the <table reference> portion of any query. I just prefer the flow of it and the control I get over the query using just those joins and try to never, ever use the comma-separated (implicit) form of declaring a CROSS JOIN. I try to list INNER JOINs before LEFT JOINs and I avoid the need to use parentheses. I also try to limit myself to joining 5 or fewer tables per query (there are exceptions, of course). There have been times when I needed the predicate FULL OUTER JOIN, but MySQL does not support it yet so I had to use a workaround. I have never tried a NATURAL join or used a USING clause so your results (in the other thread) were very interesting to me. Shawn Green Database Administrator Unimin Corporation - Spruce Pine