結合されたテーブル内のどの行をインポートするかについて追加の条件がある場合、結合を行う方法を理解するのに苦労しています。
メンバー
id|name
連絡先
id|name
メンバー連絡先
id|memberid|contactid|myid
1|1|33|2
2|1|34|3
SELECT m.*,c.*,cm.*
FROM `members` m
LEFT JOIN `contacts`c
ON c.memberid = m.id
LEFT JOIN `membercontact` mc
ON m.id = mc.memberid AND mc.myid ='3'
WHERE m.id = '2'
GROUP BY m.id
動作しません。一方、mc.myid = 3 条件を削除すると、m.id = mc.memberid、つまり m.id = 2 の最初のケースが返されますが、これは私が望むものではありません。
誰でもこれを行う適切な方法を提案できますか? ありがとうございました。