Als u records uit MongoDB probeert te "selecteren" op basis van een "kolom" met een waarde uit een reeks mogelijke waarden waarvoor u een join met een gebruikersbeheertabel nodig heeft om te bepalen, dan werkt NoSQL tegen u...
Als de lijst met gebruikers-ID's nog steeds beheersbaar is, kunt u een where ownerId in (?,?,?,?,?...)
doen type zoekopdracht (na eerst de lijst te hebben bepaald):
db.documents.find({owner:{$in: [1234, 2345, 4444, 77777, 99999]}})
De NoSQL-manier is waarschijnlijk om dingen te denormaliseren, bijvoorbeeld door niet alleen de ownerId in het document op te nemen, maar het volledige pad omhoog in de managementhiërarchie:
{ _id: 'the document A',
owner : 1234,
managers: [ 2345, 4444, 77777, 99999 ]
}
Dat moet natuurlijk worden bijgewerkt wanneer de gebruikershiërarchie wordt verschoven.