Estoy tratando de encontrar documentación, en vano, sobre cómo crear índices de campos múltiples en Mongoosejs. En particular, tengo dos campos que deben indexarse y ser únicos. ¿Cuál es un ejemplo de esquema de mangosta que indexa dos campos juntos?
93
1
está ascendiendo,-1
estaría descendiendo.index
.1
y-1
especifica una clave de índice ascendente o descendente en el campo de índice. Encontré documentos http://mongodb.github.io/node-mongodb-native/2.1/tutorials/create-indexes/La definición de índices a nivel de esquema es necesaria al crear índices compuestos.
animalSchema.index({ name: 1, type: -1 });
Referencia: http://mongoosejs.com/docs/guide.html#indexes
fuente
Por cierto, la respuesta aceptada es incorrecta, según https://stackoverflow.com/a/52553550/129300 debe envolver los nombres de los campos entre comillas simples, es decir:
mySchema.index({'field1': 1, 'field2': 1}, {unique: true});
¡Día feliz!
fuente
field1
yfield2
son identificadores válidos.field1.foo
no lo es, por ejemplo.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" .. .. } }
He probado con datos de muestra que funciona perfectamente como se esperaba.
fuente