Solución:
Los crearía como si estuviera creando un índice en un campo de nivel superior:
db.collection.ensureIndex({"attrs.nested.value": 1})
Necesita crear índices explícitamente en cada campo.
UNA. para indexar todas las propiedades en “anidado” tendrá que indexarlas por separado:
db.collection.createIndex({"attrs.nested.value": 1});
db.collection.createIndex({"attrs.nested.valuetwo": 1});
Esto se puede hacer en un comando con:
db.collection.createIndexes([{"attrs.nested.value": 1}, {"attrs.nested.valuetwo": 1}]);
B. para indexar solo “valuetwo”:
db.collection.createIndex({"attrs.nested.valuetwo": 1})
Utilice createIndex en lugar de secureIndex, ya queuranceIndex está en desuso desde la versión 3.0.0
MongoDB crea automáticamente un índice de varias claves si algún campo indexado es una matriz; no es necesario especificar explícitamente el tipo de múltiples claves.
Esto funcionará tanto para el escenario
db.coll.createIndex( { "addr.pin": 1 } )
OBJETOS anidados del escenario 1
{
userid: "1234",
addr: {
pin:"455522"
}
},
{
userid: "1234",
addr: {
pin:"777777"
}
}
Escenario 2 matrices anidadas
{
userid: "1234",
addr: [
{ pin:"455522" },
{ pin:"777777" },
]
}
https://docs.mongodb.com/manual/core/index-multikey/
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)