Covered query to takie zapytanie, które da się obsłużyć tylko z indeksu, bez pobierania całego dokumentu. Jest szybsze, bo nie trzeba doczytywać dokumentów z dysku/pamięci. Dzieje się tak, gdy filtr i zwracane pola są w tym samym indeksie (i nie potrzebujesz innych pól).
db.users.createIndex({ email: 1, createdAt: 1 })
// Only indexed fields are returned => can be covered
db.users.find({ email: "[email protected]" }, { _id: 0, email: 1, createdAt: 1 })