假设您有一个存储人员列表的数据库表。您想建立人与人之间的关系,即,人I与人J是朋友。
我想在这种情况下,需要第二张表来存储人员关联。该表将包含两个字段(person1,person2),每个条目对应于两个人之间的一对一关系。
是这样吗?还是有更聪明的方法呢?此方法使关联表像n_users ^ 2那样缩放。
是的,如果要建模多对多关系,这是正确的。那就是每个人都可以有很多朋友。
如果您具有一对多关系,就像所有人都有一个上司(或没有上司)一样,则不需要额外的表,那么您只需要在人员表中有一个BossId列。