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

Comment faire correspondre exactement le document entier?

Je ne pense pas que ce soit possible, mais une solution possible consiste à hacher le document.

lors de l'enregistrement, créez toujours un hachage du document :

var doc = {};
delete doc.hash; // never include the hash itself in the calculation
doc.hash = crypto.createHash('sha256').update(JSON.stringify(doc)).digest();
db.collection.insert(doc);

Ensuite, lors de la requête, vous pouvez interroger par hachage :

db.collection.find({
  hash: hash
})

peut être ennuyeux si vous effectuez fréquemment des mises à jour atomiques sur le document.