J'essaie de trouver de la documentation, en vain, sur la façon de créer des index multi-champs dans Mongoosejs. En particulier, j'ai deux champs qui doivent être indexés et uniques. Qu'est-ce qu'un exemple de schéma de mangouste qui indexe deux champs ensemble?
93
1
est ascendant,-1
serait descendant.index
.1
et-1
spécifie une clé d'index croissante ou décroissante sur le champ d'index. J'ai trouvé des documents http://mongodb.github.io/node-mongodb-native/2.1/tutorials/create-indexes/La définition d'index au niveau du schéma est nécessaire lors de la création d'index composés.
animalSchema.index({ name: 1, type: -1 });
Référence: http://mongoosejs.com/docs/guide.html#indexes
la source
À propos, la réponse acceptée est fausse, selon https://stackoverflow.com/a/52553550/129300, vous devez envelopper les noms de champs entre guillemets simples, c'est-à-dire:
mySchema.index({'field1': 1, 'field2': 1}, {unique: true});
Bonne journée!
la source
field1
etfield2
sont des identifiants valides.field1.foo
n'est pas, par exemple.Following command can be used to create compound index for nested json: db.ACCOUNT_collection.createIndex({"account.id":1,"account.customerId":1},{unique:1}) Mongo json structure is like : {"_id":"648738" "account": { "id": "123", "customerId": 7879, "name": "test" .. .. } }
J'ai testé avec des exemples de données, cela fonctionne parfaitement comme prévu.
la source