0
ユーザーテーブルとムービーテーブルがあるので、各ユーザーは1つ以上のムービーを見ることができます。MySqlにユーザーに複数のグループを追加する
ここで、特定の映画を見たすべてのユーザーを検索したいのですが、 MySqlのテーブルはどのように見えるのですか?
ユーザーテーブルとムービーテーブルがあるので、各ユーザーは1つ以上のムービーを見ることができます。MySqlにユーザーに複数のグループを追加する
ここで、特定の映画を見たすべてのユーザーを検索したいのですが、 MySqlのテーブルはどのように見えるのですか?
これを行うには、3つのテーブルが必要です。多くの映画と同じ映画を見ることができ、多くのユーザーが複数のユーザーが見ることができ
user
id
name
movie
id
title
ので、多対があります:最初の二つは、彼らは、非常に基本的な形で、このようになり、ユーザーや映画ますそこに多対多関係があります。 MySQLで、このような関係を定義するには、3番目のテーブルを必要としている映画(私はこのuser_moviesと呼ばれていますが、別の名前で行きたいかもしれません)を見ているユーザーを知っていること、結合テーブルと呼ばれる:へ
user_movies
user_id
movie_id
映画は、あなたがこのようなクエリを必要とする、スペースボールと呼ばれる見た人知っている:
SELECT u.name FROM user u
JOIN user_movies um ON um.user_id = u.id
JOIN movie m ON um.movie_id = m.id
WHERE m.title = 'Spaceballs'
優秀な説明 - クエリをしばらくの間、私の悩みの種だった参加して...今DB保存された機能に移動する:) ..私彼は基本的にデータアクセス/解析のためのDBに書かれたDLLを持っているので、弟はMSのものを宣伝し続けます:) – Silvertiger
SQLには多くのタイプの結合があります。ここには基本的なチュートリアルo nそれら:http://www.w3schools.com/sql/sql_join.asp – fivedigit