我在为一个俱乐部设计一个数据库。有一个“成员”实体从事活动(体育等)。根据成员的年龄,这些活动有不同的类别。每项活动在其各自的类别将有时间表。反过来,成员将有自己的时间表,因为,例如,他们只能参加2天的活动,在一周内进行4天。我是这样解决的:https://ibb.co/dsjkhz我的问题是:这是解决这个问题的可行方法吗?我似乎有点复杂,我不认为这是理想的/优化的性能。我肯定还有别的办法。谢谢!
zmeyuzjn1#
只要在要搜索或联接的id列上有索引,性能就可以了。另一个选项是在某些地方枚举,以限制联接,如果有4个类别不会更改或很少更改,但看起来您正在尝试遵循最佳实践并为未来做计划,那么您就可以避免这种情况。您的模式是基于想要使用集合列表的类别和活动,但该列表可能会增长或名称可能会更改,因此它们有自己的表,而且从我可以告诉您的情况来看,一对多关系需要其他表,因此即使有其他选项可用,它们看起来也是一条不好的路线。
1条答案
按热度按时间zmeyuzjn1#
只要在要搜索或联接的id列上有索引,性能就可以了。另一个选项是在某些地方枚举,以限制联接,如果有4个类别不会更改或很少更改,但看起来您正在尝试遵循最佳实践并为未来做计划,那么您就可以避免这种情况。您的模式是基于想要使用集合列表的类别和活动,但该列表可能会增长或名称可能会更改,因此它们有自己的表,而且从我可以告诉您的情况来看,一对多关系需要其他表,因此即使有其他选项可用,它们看起来也是一条不好的路线。