J'ai exécuté la requête suivante sur une collection dans ma base de données mongodb.Résultats incohérents renvoyés par mongodb find query
db.coll.find({field_name:{$exists:true}}).count()
et il a renvoyé 2437185. Le total des enregistrements signalés par db.coll.find({}).count()
est 2437228.
Maintenant, quand je lance la requête db.coll.find({field_name:{$exists:false}}).count()
, au lieu de retourner 43 il est revenu 0.
je les deux questions suivantes:
Est-ce que le scénario ci-dessus signifie que les données dans ma collection a devenir corrompu?
J'avais posté une question plus tôt à ce sujet à (Updating records in MongoDB through pymongo leads to deletion of most of them). La personne qui a répondu a déclaré que la mise à jour des données dans mongo db pourrait effacer les données mais ne pas les supprimer. Qu'est-ce que ça veut dire ?.
Merci
Merci pour la réponse. J'ai essayé db.coll.find ({field_name: {$ not: {$ existe: vrai}}}). Count(), il renvoie toujours 0! En ce qui concerne la version de mongodb, quand je lance db.version() sur le shell, c'est 1.6.1. Quel pourrait être le problème ? –
Êtes-vous capable de mettre à jour mongo? 1.6.x est assez vieux. 1.8.x est la série de production actuelle, et 2.0 est attendue dans les prochaines semaines. Les versions "impaires" (1.7.x, 1.9.x) sont des versions de développement non destinées à une utilisation en production. – dcrosta