私は2つのテーブルを持っている:同じ選択で2番目のテーブルから関連データを取得するにはどうすればよいですか?
'people'
id | name | which_image
--------------------------------
1 | Joey | 1
2 | Bobby | 2
3 | Jimmy | 3
'images'
id | filename
--------------------------------
1 | joe_face.jpg
2 | bob_angry.jpg
3 | jim_laughs.jpg
は、どのように私は1人のカップルのための「人」テーブルのすべての列を取得するために選択して、同じクエリで、そのファイル名を取得することができますか?私はこれを試してみたが、それは空のセットを返します:「画像」には、実際の外部キーが存在しないので、次のようにサブ選択を使用し、
SELECT p.*,
i.filename
FROM people p
INNER JOIN images i
ON p.which_image = i.id
WHERE p.id = 1
OR p.id = 3;
あなたのクエリは、私はPでの問題を考える正しいです。* .... p.id、p.nameのようなテンションに列名を試してみてください。.. –
このクエリは、正しい完了です。 –
あなたが使っているMysqlのバージョン。 –