Předpokládejme, že váš model se nazývá Employee
:
Employee.find({ "departments.0": { "$exists": true } },function(err,docs) {
})
Jako $exists
požádá o 0
index pole, což znamená, že má něco v sobě.
Totéž platí pro maximální počet:
Employee.find({ "departments.9": { "$exists": true } },function(err,docs) {
})
Takže to musí mít alespoň 10 položek v poli, aby se shodovaly.
Opravdu byste měli zaznamenat délku pole a aktualizovat pomocí $inc
pokaždé, když se něco přidá. Pak můžete udělat:
Employee.find({ "departmentsLength": { "$gt": 0 } },function(err,docs) {
})
Na vlastnosti "departmentsLength", kterou ukládáte. Tuto vlastnost lze indexovat, což ji činí mnohem efektivnější.