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

Améliorer les champs de requête existent dans MongoDB

Vous pouvez reconcevoir votre schéma comme ceci :

{
  pairs:[
  {k: "a", v: 5775},
  {k: "b", v: "b1"},
  ]
}

Ensuite vous indexez votre clé :

db.people.ensureIndex({"pairs.k" : 1})

Après cela, vous pourrez effectuer une recherche par correspondance exacte :

db.ent.find({'pairs.k':"a"})

Si vous optez pour l'index Sparse et votre schéma actuel, proposé par @WesFreeman, vous devrez créer un index sur chaque clé que vous souhaitez rechercher. Cela peut affecter les performances d'écriture ou ne sera pas acceptable si vos clés ne sont pas statiques.