我正在构建一个音乐应用程序。在我的数据库中,我有一个“艺术家”表,与“专辑”表相关,与“轨道”表相关。
我的应用程序的每个用户都可以“喜欢”(竖起大拇指)或“不喜欢”(竖起大拇指)艺术家/专辑/轨道。因此,我必须使用参数“投票”在用户和艺术家/专辑/轨道之间创建多对多关系,该参数可以设置为 1/-1。
我的问题是:创建三个“喜欢/不喜欢”表(user_artist_like、user_album_like、user_track_like)更合适还是只创建一个包含三列(artist_id、album_id、轨道 ID)?知道我经常需要获取用户的所有点赞。
最佳答案
第一个选项更好,因为将数据放在一个表中意味着同一行中的数据点是相关的,但事实并非如此。多个表使您可以更轻松地管理数据,而不会因行而感到困惑。例如,如何为单个表构建 INSERT INTO 语句?它无法有效地利用空间。
关于mysql - 对多个元素表示赞同/反对,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20827905/