我感兴趣的是多对多关系如何以及为什么比将信息存储在一行中更好。
示例:我有两个表,用户和电影(非常大的数据)。我需要建立一种关系“ View ”。 我有两个想法:
- 在 Users 表中创建另一列,名为“views”,我将在其中以字符串形式存储该用户已观看的电影的 ID。例如:“2,5,7...”。然后我将在 PHP 中处理这些信息。
- 创建新表 users_movies(多对多),其中包含列 user_id 和 movie_id。 user_id=5 和 movie_id=7 的行表示用户 5 观看了电影 7。
我很感兴趣哪种方法更好以及为什么。请考虑数据相当大。
最佳答案
第二种方法几乎在各个方面都更好。您不仅可以利用数据库索引更快地查找记录,还可以使修改变得更加容易。
关于php - 多对多 vs 一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28302912/