MongoDB wykona każdą klauzulę operacji $or jako oddzielne zapytanie i usunie duplikaty jako przebieg przetwarzania końcowego. W związku z tym każda klauzula może używać oddzielnego indeksu, co często jest bardzo przydatne.
Innymi słowy, NIE spojrzy na 1 dokument, sprawdzi, która z klauzul OR ma zastosowanie, i wykona wcześniejsze wyjście, jeśli pierwsza klauzula jest zgodna. Zamiast tego wykonuje pełne zapytanie zestawu danych według klauzuli i usuwa duplikaty po fakcie. Może się to wydawać mniej wydajne, ale w praktyce prawie zawsze jest szybsze, ponieważ pierwsze podejście byłoby w stanie trafić tylko na jeden indeks dla wszystkich klauzul, co rzadko jest skuteczne.