我正在建立一个数据库,我对拥有一个类似 facebook 的好友系统很感兴趣。 我最初的计划是有一个像这样的表:
uid friends
4 30,23,12,33
30 54,92,108
所有这些数字都是包含用户信息的表的 FK。 有人告诉我这是不可取的,而且实际上是不可能的,因为如果 FK 是单元格中唯一放置的 FK,MySQL 只会很好地处理它们。 所以也许是这样的?
uid(PK) friend
4 30
4 23
4 12
30 54
30 92
30 108
等等。 这不会给我留下大量的行吗? (成千上万?) 就时间和效率而言,第一种技术是否不值得?
最佳答案
10 的几千行是小菜一碟,即使对于 Mysql 也是如此。没有其他方法可以模拟多对多关系。您将拥有这些 ID 的索引,其性能比子字符串比较好很多个数量级。
关于mysql - 在 MySQL 的一个字段中有多个 FK 是个好主意吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/592477/