我已经为我有查询以获取特定用户的组的组实现了 mongodb 模式设计。我正在考虑将数据存储为给定的模式。例如
var GroupSchema = new Schema({
name:String,
mememers: [{
userId: { Schema.ObjectId, ref: 'User'}
}]
});
和
var UserSchema = new Schema({
name:String,
email:String,
groups:[{ type:Schema.ObjectId, ref:'Group'}]
});
但是我仍然对什么查询对查询有效感到困惑。
var group = Group.find({ "memebers.userId": "***UserId***"});
group.exec(function(err, groups){ });
或者
var user = User.findOne({_id:"***userId**"}).populate("groups");
user.exec(function(err, user){ });
请给我这两个查询的优缺点。