;>>> 2011/10/20 10:21 -0400, Shawn Green (MySQL) >>>>
On 10/19/2011 17:50, wrote:
>I made this query a view, called "MEMBERP", no problem:
...snip...
>Only "GivenName" is derived from "GROUP_CONCAT" and is also a lesser field for
> ordering by. Why is that a problem?
Perhaps it is the USING clause that is messing you up. The USING() clause needs to pick
one source for MemberID and you appear to have two. Try converting to a more explicit ON
clause instead.
<<<<<<<<
However (ON, USING, NATURAL) I write joining the three tables on field "MemberID", the
outcome is the same, that error message.
>>>> 2011/10/20 10:21 -0400, Shawn Green (MySQL) >>>>
Also you are mixing LEFT and RIGHT joins in the same query. While technically not wrong,
it's also not 'good form'. I suggest you alter the sequence of your table definitions to
use either all LEFT or all RIGHT like this:
FROM Address
LEFT JOIN Nam
ON ...
LEFT JOIN Paid
ON ...
<<<<<<<<
That seems strange to me.
Here, for clarity to my original intent, I write it with NATURAL:
FROM Nam NATURAL RIGHT JOIN Address NATURAL LEFT JOIN Paid
. To me it looks good, because it emphasizes "Address", wherin "MemberID" originates (It
is also in the order that I wish the fields to appear, although I know MySQL handles
almost everything LEFT). There is also no problem with associativity, because it comes
out the same whichever one is first taken.