Jeśli próbujesz „wybrać” rekordy z MongoDB na podstawie „kolumny” mającej wartość ze zbioru możliwych wartości, których ustalenie wymagałoby sprzężenia z tabelą zarządzania użytkownikami, to NoSQL działa przeciwko tobie...
Jeśli lista identyfikatorów użytkowników jest nadal możliwa do zarządzania, możesz wykonać where ownerId in (?,?,?,?,?...)
typ zapytania (po uprzednim ustaleniu listy):
db.documents.find({owner:{$in: [1234, 2345, 4444, 77777, 99999]}})
Sposób NoSQL polega prawdopodobnie na denormalizacji rzeczy, na przykład poprzez uwzględnienie nie tylko identyfikatora właściciela w dokumencie, ale także pełnej ścieżki w górę hierarchii zarządzania:
{ _id: 'the document A',
owner : 1234,
managers: [ 2345, 4444, 77777, 99999 ]
}
Oczywiście będzie to musiało zostać zaktualizowane, gdy hierarchia użytkowników zostanie przesunięta.