重複の可能性:
多対多の関係の問題
映画のテーブルとカテゴリのテーブルがあります。映画のカテゴリーをもう一つ登録したいのですが。そして、いくつかの映画のカテゴリ。つまり、リレーション N: N です。php と Mysql でそれを行うにはどうすればよいですか?
例: カテゴリ 1 -> 映画 1 と映画 2
動画 2 -> カテゴリ 1 とカテゴリ 2
多対多の関係の場合、ジャンクション テーブルと呼ばれる 3 番目のテーブルが必要です。
だからそれはそのように見えるでしょう
Movie
id | desc
Category
id | desc
MoviesCategories
id | movieID | categoryId
あなたの選択はオンにMoviesCategories
なり、次のようになります
SELECT *
FROM
MoviesCategories INNER JOIN Category ON MoviesCategories.CategoryId = Category.Id
INNER JOIN movie ON MoviesCategories.MovieID = Movie.ID
その関係にはテーブルが必要です。このような:
MovieToCategory
ID
CategoryID
MovieID
または、複合プライマリ インデックスを作成して、各ムービーをカテゴリの組み合わせに 1 回だけ許可することもできます。
MovieToCategory
CategoryID
MovieID