'people'、'people2id'、'places' の 3 つの MySQL テーブルがあります。最初のテーブルには人に関する情報が格納され、'places' テーブルには住所に関する情報が格納されます。真ん中の 'people2id' は、この 2 つのテーブルを相互接続します (1 人の人物が 2 つ以上のアドレスを持っている可能性があります)。
今、私はある人のプロフィールに行き、彼のプロフィールだけでなく、彼に関連付けられたアドレスも見たいと思っています。そのために次のクエリを作成しました。
SELECT * FROM people p
JOIN people2id e ON p.peopleId = e.peopleId
JOIN places a ON a.peopleId = e.peopleId
WHERE p.peopleId = number
これは、その人が関連付けられた住所を持っている場合に機能しますが、そうでない場合は失敗します。この件に関して、何らかの種類の JOIN を使用する必要があるのか、それとも UNION を使用する必要があるのか わかりません。