2009-08-09 27 views
2

私は2つのテーブル持っている:は1レコードのソート:n個(1対多)の関係

+-----------+ +------------------------------------+--------------+ 
+ persons | | photos           | 
+-----------| +---------------------------------------------------+ 
+ id | name + | id | person_id | path    | title  | 
+-----------+ +---------------------------------------------------+ 
+ 1 | Tom + | 1 |   2 | ~fred/me.png  | Yo, it's Me! | 
+ 2 | Fred + | 2 |   2 | ~fred/my_wife.png | I'm Susan | 
+ 3 | Jack + | 3 |   1 | ~tom/my_dog.jpg | a woof  | 
+-----------+ +---------------------------------------------------+ 

この関係にあるた:

人hasManyの写真<を - >写真の所属者

写真付きの人物(ジャックみたいな人がいなくても)を写真のタイトルで並べ替えたいと思います。

どのようなSQLクエリ(MySQL)を書く必要がありますか?結合を1対多の関係で使用できますか?

PS:

$persons = Array(
    [0] => Array(
     [id] => 1, 
     [name] => 'Tom', 
     [Photo] => Array(
      [0] => Array(
       [id] => 3, 
       [person_id] => 1, 
       [path] => '~tom/my_dog.jpg', 
       [title] => 'a woof'    // 1st 
      ) 
     ) 
    ), 
    [1] => Array(
     [id] => 2, 
     [name] => 'Fred', 
     [Photo] => Array(
      [0] => Array(
       [id] => 2, 
       [person_id] => 2, 
       [path] => '~fred/my_wife.png', 
       [title] => "I'm Susan"   // 2nd 
      ), 
      [0] => Array(
       [id] => 1, 
       [person_id] => 2, 
       [path] => '~fred/me.png', 
       [title] => "Yo, it's Me!"  // 3rd 
      ) 
     ) 
    ), 
    [2] => Array(
     [id] => 3, 
     [name] => 'Jack', 
     [Photo] => Array() 
    ) 
) 

感謝:ちょうど情報として、私はレコードを持つような配列を構築できるようにしたいと思います!

答えて

4
​​
+0

+1私にそれを打ち、自分の投稿を消去しました:) –