我有一个用户越来越多的 MySQL 数据库,每个用户都有一个他们想要的项目和他们拥有的项目的列表 - 每个用户都有一个特定的 ID
当前数据库是前一段时间创建的,当前每个用户在 WANT 或 HAVE 表中都有一个特定的行,每行 50 列,用户 ID 作为主键,每个项目 WANT 或 HAVE 都有一个特定的 ID 号。
这目前限制了每个用户添加 50 个项目,并使数据库的搜索和其他功能大大复杂化
重做数据库时 - 是否可以简单地创建一个 2 列 WANT 和 HAVE 表,每行都有用户 ID 和项目 ID。这样,每个用户的项目就没有“理论”限制。
每次成员加载个人资料页面时 - 然后将使用来自 have 或 want 表的简单 SELECT WHERE ID = ##### 语句编译他们想要和拥有的项目列表
此外,我需要比较用户与用户的项目列表、最常见的项目、拥有最多项目的用户、完整的用户搜索一个用户想要而另一个用户拥有的项目...... - 等等等等
用户数量范围为 5000 - 20000
每个用户平均大约 15 - 20 个项目
这将是一个可行的 MySQL 结构还是我必须重新考虑我的策略?
非常感谢你的帮助!