Я хотел бы найти документы, содержащие некоторые поля, используя $exists
. В частности, меня интересуют два поля: payload.fields.MDI_CC_DIAG_DTC_LIST
и payload.asset
.
Если я хочу найти только документы, содержащие первое, это мой запрос:
db.getCollection("dtc").find({"payload.fields.MDI_CC_DIAG_DTC_LIST": {$exists: true}}).count()
Это дает мне 2265 документов.
Когда я пытаюсь найти документы, которые содержат два поля (описанные выше), я использую этот код:
db.getCollection("dtc").find({"payload.fields.MDI_CC_DIAG_DTC_LIST": {$exists: true}}, {"payload.asset": {$exists: true}}, {multi: true})count()
Это выдает мне ошибку:
Не удалось получить документы
[coches.dtc@ localhost:27017 [direct]] : An error occurred while retrieving documents!
Stacktrace:
|_/ java.lang.Exception: [coches.dtc@ localhost:27017 [direct]] : An error occurred while retrieving documents!
|____/ Illegal argument: Invalid number of arguments to find().
Что я неправильно кодирую?