Вашата заявка има няколко проблема, опитайте по-долу:
db.getCollection("dtc")
.find({
"payload.fields.MDI_CC_DIAG_DTC_LIST": { $exists: true },
"payload.asset": { $exists: true }
})
.count();
Проблеми:
- .find()
ще вземе два аргумента
.find({...},{...})
първият е филтър (всички филтри срещу събиране отиват тук), а вторият е проекция (която се използва за изключване или включване на определени полета от документите с резултати). Тук преминавате 3 аргумента. Но като цяло, когато става въпрос за node.js Третият може да е функция за обратно извикване, но няма нищо общо с действителната заявка, която се изпълнява в базата данни. - Няма такова нещо, наречено
{multi: true}
на.find()
.multi
ще бъде предадено като 3-та опция/арг към .update() операции, за да актуализирате множество документи, отговарящи на филтрирани критерии.