好的,所以我来自mySQL背景,现在正尝试使用nodeJS和Mongoose重建网站。我的旧mySQL架构看起来像这样(简化):
users
user_ID
user_name
user_email
user_password
groups
group_ID
group_name
group_description
groupusers
groupuser_ID
group_ID
user_ID
comments
comment_ID
group_ID
user_ID
comment_txt
任何人都可以建议重新构建这个旧的mySQL架构以使用Mongoose的最佳方法吗?
答案 0 :(得分:5)
users
user_ID
user_name
user_email
user_password
Groups
- grupid 1
- grupid 2
- grupid 3
groups
group_ID
group_name
group_description
comments
1 -
user_ID
comment_txt
2 -
user_ID
comment_txt
如果您担心评论大小(目前mongodb最大文档大小为16 MB),您可以将其移至其他文档
通过这种方式,您可以通过
找到该组的用户 db.users.find({Groups:'groupid1'})
用户所属的群组
db.users.find({id:userid},{Groups:1})
如果您想通过上述查询检索组相关信息,我建议您使用users.groups存储最常访问的组字段,如下所示
users
user_ID
user_name
user_email
user_password
Groups
- { grupid 1,name}
- {grupid 2,name}
- {grupid 3,name}