Se stai cercando di "selezionare" record da MongoDB in base a una "colonna" avente un valore da un insieme di possibili valori che avresti bisogno di un join rispetto a una tabella di gestione degli utenti per determinare, allora NoSQL sta lavorando contro di te...
Se l'elenco degli ID utente è ancora gestibile puoi eseguire un where ownerId in (?,?,?,?,?...)
tipo di interrogazione (dopo aver prima determinato l'elenco):
db.documents.find({owner:{$in: [1234, 2345, 4444, 77777, 99999]}})
Il modo in cui NoSQL è probabilmente quello di denormalizzare le cose, ad esempio includendo non solo l'ID proprietario nel documento, ma il percorso completo nella gerarchia di gestione:
{ _id: 'the document A',
owner : 1234,
managers: [ 2345, 4444, 77777, 99999 ]
}
Ovviamente, questo dovrà essere aggiornato quando la gerarchia degli utenti verrà spostata.