MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Interroger l'existence d'une liste imbriquée dans Mongo

db.collection.find({plays.clicks.0: {$exists:true}})

est la bonne syntaxe, cependant comme plays est une liste la requête correspondra à n'importe quel document qui a des clics dans les plays . Il n'y a aucun moyen de récupérer un sous-ensemble d'un tableau pour les sous-éléments de cette manière[1]. Il existe un ticket pour les sous/collections virtuelles[2]

[1] http://www. mongodb.org/display/DOCS/Retrieving+a+Subset+of+Fields#RetrievingaSubsetofFields-RetrievingaSubrangeofArrayElements

[2] https://jira.mongodb.org/browse/SERVER-828