3

Home(ID、name)とPhotos(ID、homeid、filename、splash)の2つのテーブルがあります

ホームの主キーはID、写真の主キーはIDです。ホームには複数の写真を含めることができます。スプラッシュは0または1にすることができ、HomeIDごとに、最大で1枚の写真にsplash=1を設定できます。

ここで、SELECT * FROM Homeを使用して、各ホームのスプラッシュをマージします。存在する場合、スプラッシュはnullを返します。

どのようにできるのか?

表の例を次に示します。

Home
ID     name
1      home1
2      home3252
3      home5326

Photos
ID     homeid       filename       splash
1      1            asda.jpg       0
2      1            aspg.jpg       1
3      2            nasf.jpg       0
4      2            qfqj.jpg       1
5      3            vnas.jpg       0
6      3            nfao.jpg       0
4

2 に答える 2

3
select h.name, p.filename
from Home h
left join Photos p on (h.id = p.homeid and p.splash = 1)
于 2012-06-27T11:25:11.137 に答える
1

答えはあなたの質問にあります、LEFT OUTER JOINMySQL構文を使用してください...

于 2012-06-27T11:25:28.540 に答える