MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Como encontrar o registro correspondente no mongodb?


Este é o comportamento da filtragem de documentos embutidos em vários níveis, normalmente o filtro correspondente retornaria o documento inteiro, não os subconjuntos.

Normalmente positional operator $ usado para combinar os subdocumentos em updates . Mas o recurso ainda não foi implementado nos especificadores de retorno.

Já existe um problema pendente no mongo Suporte para operador posicional ($) em campos para retornar especificador . (Por favor, faça o login para votar se você realmente precisava do recurso)

Então você tem que redesenhar seu esquema para lidar com isso, pode ser assim
db.test.insert({"person" : [ { "id":1, "details" : { "name" : "Aswini", "Age" : 10 }}]})
db.test.insert({"person" : [ { "id":2, "details" : { "name" : "Mahesh", "Age" : 11}}]})

db.test.find({"person.id":1},{'person.details':1})