Mongoose / mongoDB łączy sprzężenia .. ale pochodzę z tła sql

Pochodzę z tła sql, więc pisanie zapytań w sql, w których łączę tabele, jest dość proste, ale myślę, że brakuje mi tego w mongoose / mongodb

Zasadniczo znam identyfikator Subscriber_ID (który odwzorowuje dokument w kolekcji użytkownika)

Chcę pobrać grupę projektową ze wszystkimi projektami, do których należy użytkownik, więc jeśli miałbym to napisać w pseduo sql, byłoby to jak

Select 
  ProjectGroup.title, 
  Project.Title 
FROM 
  ProjectGroup, 
  Project, 
  User 
WHERE 
  User.id = req.body.subscriber_id 
  AND Project.subscriber_id = User.id 
  AND  ProjectGroup.project_id = Project.id

Musi istnieć sposób na wykonanie podobnych połączeń w mongoose / mongodb, ponieważ typ mapuje do schematu?

Moje schematy .....

Schemat grupy projektowej

var ProjectGroupSchema = new Schema({
    title             : String
  , projects          : [ { type: Schema.Types.ObjectId, ref: 'Project' } ]
});

Schemat projektu

var ProjectSchema = new Schema({
    title         : {type : String, default : '', required : true}
  , subscribers   : [{ type: Schema.Types.ObjectId, ref: 'User' }]
});

Schemat użytkownika

var UserSchema = new Schema({
    first_name    : {type: String, required: true}
  , last_name     : {type: String, required: true}
});

Dziękuję Ci!

questionAnswers(2)

yourAnswerToTheQuestion