Я хочу сделать запрос к вложенному документу.Проблема в том, что MongoDB, похоже, уважает порядок ключей объекта.Поэтому, если я сделаю следующий запрос, я не получу никаких результатов:
db.getCollection('test').find({docId:'tLDmtdeYuG9DiGGrL',optimizeParams:{"deviceType":"mobile","daytime":"night"}})
Если я изменю порядок optimizeParams, я получу результат:
db.getCollection('test').find({docId:'tLDmtdeYuG9DiGGrL',optimizeParams:{"daytime":"night","deviceType":"mobile"}})
ТеперьSoultion будет использовать точечную запись, но в этом случае я получу ВСЕ документы, которые содержат оба ключа.Но мне нужны только документы, которые имеют ТОЛЬКО оба ключа (никаких других):
db.getCollection('test').find({docId:'tLDmtdeYuG9DiGGrL',"optimizeParams.deviceType":"mobile","optimizeParams.daytime":"night"})
Есть ли способ, как я могу выполнить запрос без соблюдения порядка ключей?