2012-04-14 33 views
-2

我正在一個有電影列表的網站上工作。我期望做的是讓用戶可以檢查並評價他們看過的電影。我有兩個不同的表格,一個用於用戶,一個用於電影。這是我第一次嘗試連接2個表格,因此我不確定這樣的起點是什麼。我想使用電影ID作爲用戶配置文件中的標識符。但我不能想到一個好方法把它整合到用戶數據庫中。使用2個表mysql

感謝

回答

1

讓一個用戶表:

  • 用戶名
  • 用戶名
  • 出生日期,...

一臺電影:

  • MovieID
  • 電影名稱
  • Productionyear,...

和表格來將它們鏈接:

  • 鏈路ID
  • UserREF(在這裏你將用戶的用戶ID)
  • MovieREF(在這裏你把電影的MovieID)
  • Rating
  • 日期時間,...

現在,您可以用這些表就是這樣的工作,但你可以做一些額外的,以確保您的數據保持有效:如果您在UserREF和MovieREF添加約束,如果沒有相應的用戶或電影,Link-table中不能有線路。

+0

通過做這種方式,那麼你將有一個新的生產線每次有人檢查一個電影了嗎? – terry 2012-04-14 21:35:12

+0

是的。這是在RDBMS中完成的方式。 – Konerak 2012-04-14 22:03:38

+0

很感謝。我將在今晚工作 – terry 2012-04-14 22:07:37

1

你需要第三個表格。例如

user_movie_rating: user_id, movie_id, rating 

讀取等級爲電影做這樣

SELECT SUM(rating)/COUNT(user_id) FROM user_movie_rating WHERE movie_id = x 
+1

AVG(評級)「吹捧法庭有什麼問題? – Konerak 2012-04-14 20:42:53

+0

以及我沒有想到它^^ – 2012-04-14 20:44:38