-1

私は2つのテーブル「movies」とmovie_embedsを持っています

映画で

id タイトル 説明
1 Movie1 Desc1
2 Movie2 Desc2
3 Movie3 Desc3

in movie_embeds

id movie_id link
1 1
link1 2 1 link2
3 1 link3
4 2 link4
5 2 link5
6 3 link6

コード:

    $sql = "SELECT *
    FROM movies, movie_embeds
    WHERE movies.id = movie_embeds.movie_id
     GROUP BY movies.title "; 

    $result = mysql_query($sql) or die('A error occured: ' . mysql_error());
while ($row = mysql_fetch_assoc($result)) {
    echo '<p>';
        echo  $row['title'];

    echo '<p>';
        echo $row['link'];

    echo '<p>';
        echo $row['meta'];

    echo '<p>';

    }

結果:

Movie1
link1
Desc1

movie2
link4
Desc2

movie3
link6
Desc3

問題は、最初の結果と他の結果に link2 と link3 を含めるにはどうすればよいですか?

GROUP BY movies.title 映画のタイトルとすべての複製を 3 回削除すると。ヘルプ?

このような結果が必要です

次のような結果が必要です。

Movie1
link1
link2
link3
Desc1

movie2
link4
link5
Desc2

movie3
link6
Desc3

私はSQLとPHPコードを添付
テストPHPファイル
テストSQL

4

1 に答える 1

0

次のようにするとよいでしょう:

  SELECT m.*,me.*
    FROM movies m
    JOIN movie_embeds me ON (me.movie_id=m.id)
    GROUP BY m.title;

編集:グループを削除して個別に追加することもできますが、おそらくプリンターコードに問題があると思います。サードパーティのクライアントからクエリを実行してみましたか?

于 2013-03-21T15:38:10.203 に答える