Przede wszystkim podstawowa różnica między findOne()
i find()
:
-
findOne()
- jeśli zapytanie pasuje, zwracany jest pierwszy dokument, w przeciwnym razie null. -
find()
- bez względu na liczbę dopasowanych dokumentów, zwracany jest kursor, nigdy pusty.
Więc po umieszczeniu w warunku if, findOne()
może przekonwertować na fałsz, gdy nie pasuje do żadnego dokumentu. Jako find()
zwraca obiekt kursora i nigdy nie zwraca wartości null, zostanie przekonwertowany na true po umieszczeniu w warunku if.
find
i findOne()
zwróć następujące dla pustej kolekcji :