Docs Menu
Docs Home
/ /

Crear un índice único compuesto

Aplicas una restricción única a Índices compuestos. Un índice compuesto único garantiza la unicidad de la combinación de los valores clave del índice.

Para crear un índice único en MongoDB Shell, utilice el db.collection.createIndex()Método con la unique opción establecida true en.

db.collection.createIndex(
{
<field1>: <sortOrder>,
<field2>: <sortOrder>,
...
<fieldN>: <sortOrder>
},
{ unique: true }
)

Este ejemplo agrega un índice compuesto único a los campos groupNumber, lastname y firstname de una colección members. El índice garantiza que la combinación de estos valores de campo sea única para cada documento de la colección.

Para crear un índice único en los campos groupNumber, lastname y firstname de la colección members, ejecute el siguiente comando en mongosh:

db.members.createIndex(
{ groupNumber: 1, lastname: 1, firstname: 1 },
{ unique: true }
)

El índice creado refuerza la unicidad de la combinación de groupNumber lastname firstname valores, y.

Consideremos una colección con el siguiente documento:

db.myColl.insertOne(
{ _id: 1, a: [ { loc: "A", qty: 5 }, { qty: 10 } ] }
)

Cree un índice multiclave compuesto único a.loc en a.qty y:

db.myColl.createIndex( { "a.loc": 1, "a.qty": 1 }, { unique: true } )

El índice único permite la inserción de los siguientes documentos en la colección, ya que el índice exige unicidad para la combinación de a.loc a.qty valores y:

db.myColl.insertMany( [
{ _id: 2, a: [ { loc: "A" }, { qty: 5 } ] },
{ _id: 3, a: [ { loc: "A", qty: 10 } ] }
] )

Volver

Único de un solo campo

En esta página