sql >> Base de Datos >  >> NoSQL >> MongoDB

mongoDB distinto y ¿dónde en la misma consulta?

Distinct la consulta en mongo con condición funciona así

 db.Article.distinct("Comment.Reply.ip",{"Comment.Reply.email" : "xxx"})

no al revés

EDITAR:

Entiendo el problema ahora, para hacer coincidir/filtrar subdocumentos necesitamos usar el operador $elemMatch, como este

  db.Article.distinct("Comment.Reply.ip",{Comment: {$elemMatch: {"Reply.email" : "xxx"}}})

pero esto no funcionará si el subdocumento contiene subconjuntos (en su caso, tiene un conjunto de respuestas). Hay un problema existente $elemMatch en subArray se abre. Y está planeado para mongo 2.1. Puede consultar el enlace para obtener más información