Para agentes de IA: um índice de documentação está disponível em https://www.mongodb.com/pt-br/docs/llms.txt — as versões de markdown de todas as páginas estão disponíveis anexando .md a qualquer caminho de URL.
Menu Docs

Criar um índice único composto

Você impõe uma restrição única em índices compostos. Um índice composto exclusivo impõe exclusividade na combinação dos valores de chave de índice.

Para criar um índice único no MongoDB Shell, use o db.collection.createIndex() método com a opção unique definida como true.

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

Este exemplo adiciona um índice composto único nos campos groupNumber, lastname e firstname de uma coleção members. O índice garante que a combinação desses valores de campo seja exclusiva para cada documento na coleção.

Para criar um índice único nos campos groupNumber, lastname e firstname da coleção members, execute o seguinte comando em mongosh:

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

O índice criado impõe exclusividade para a combinação de valores groupNumber, lastname e firstname.

Considere uma coleção com o seguinte documento:

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

Crie um índice composto único multikey em a.loc e a.qty:

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

O índice único permite a inserção dos seguintes documentos na collection, pois o índice impõe exclusividade para a combinação dos valores a.loc e a.qty:

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