我有一个看起来像这样的表:
人员
| Id | Name | FavoriteColor |
我想添加一个新列,即“ Friends”,使其变为
人员
| Id | Name | FavoriteColor | Friends |
我希望Friends
列(抽象地)是一个包含Persons
表中其他行的ID的列表。
执行此操作的最佳方法是什么?我知道我可以使用FK来链接表,但我不只是将特定行链接到其他表中的特定行,而是将特定行链接到特定表。
答案 0 :(得分:2)
您不添加字段,而是创建第二个表
Persons: id, Name, Favorite Color
Friends: PersonA_id, PersonB_id
其中PersonA_id,PersonB_id是“人员”表的外键。
所以您可以在人中拥有这样的东西
id Name Color
1 Luis Blue
2 Pedro Red
3 Ana Yellow
4 Donald Black
朋友:
PersonA_id PersonB_id
1 2
3 1
Luis有2个朋友,Pedro和Ana仅有一个朋友(Luis),而Donald 0个朋友。