【发布时间】:2012-07-23 08:33:21
【问题描述】:
我有一个 MySQL 数据库,用户数量不断增加,每个用户都有一个他们想要的项目和他们拥有的项目的列表 - 每个用户都有一个特定的 ID
当前数据库是前一段时间创建的,当前每个用户在 WANT 或 HAVE 表中都有一个特定行,每行 50 列,用户 ID 作为主键,每个项目 WANT 或 HAVE 都有一个特定 ID号码。
目前这限制了每个用户添加 50 个项目,并且极大地复杂了数据库的搜索和其他功能
重做数据库时,是否可以简单地创建一个 2 列 WANT 和 HAVE 表,其中每一行都有用户 ID 和项目 ID。这样,每个用户的项目就没有“理论上的”限制。
每次成员加载个人资料页面时,他们的想要和拥有项目列表将使用简单的 SELECT WHERE ID = ##### 语句从拥有或想要表编译
此外,我需要比较用户与用户的项目列表、最常见的项目、拥有最多项目的用户、完整的用户搜索一个用户想要的项目以及另一个用户拥有的项目...... - 等等等等
用户数量范围为 5000 - 20000
每个用户平均大约 15 - 20 个项目
这将是一个可行的 MySQL 结构还是我必须重新考虑我的策略?
非常感谢您的帮助!
【问题讨论】:
标签: php mysql structure infinite