我正在使用以下简化示例设计数据库结构:
Team has many members
Member has many clients
Client has many projects
假设我的对象有这些参数:
Team: id, type
Member: id, team_id, name
Client: id, member_id, email
Project: id, client_id
找到项目的客户、客户的成员或成员的团队非常简单。
但是,假设我要找到一个项目的团队,例如,我必须先找到一个项目的客户,然后是客户的成员,然后是成员的团队。
我可以直接将 team_id 添加到项目中,如下所示:
Project: id, client_id, team_id
然而,我意识到这增加了一定程度的冗余,因为这些信息可以通过“向上关系树”获得。这是个坏主意吗?
谢谢!