我有一个社区列表。每个社区都有一个成员列表。目前,我将每个社区存储在一行中,成员名称用逗号分隔。这对较小的不可变社区有好处。但是随着社区变得越来越大,让我们假设拥有 75,000 名成员,社区的加载速度变得越来越慢。社区的部分加载(让我们说随机 10 个成员)也不是很优雅。在这种情况下,社区表的最佳表结构是什么?如果有这样做的理由,使用多个表也不是问题。
问问题
87 次
1 回答
2
使用三个表
`community`
| id | name | other_column_1 | other_column_2 ...
`user`
| id | name | other_column_1 | other_column_2 ...
`community_user`
| id (autoincrement) | community_id | user_id |
然后要获取社区中所有用户的用户信息,您可以执行以下操作
SELECT cu.id AS entry_id, u.id, u.name FROM `community_user` AS cu
LEFT JOIN `user` AS u
ON cu.user_id = u.id
WHERE cu.community_id = <comminuty id>
于 2012-04-04T13:10:46.223 回答