

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Índices de campo único
<a name="indexes-single-field"></a>

Os índices de campo único armazenam informações de qualquer campo único em uma coleção de documentos. Por padrão, todas as coleções têm um índice no `_id` campo. Você pode adicionar índices adicionais para acelerar consultas e operações importantes.

Índices de campo único são benéficos quando:
+ Seu aplicativo frequentemente consulta ou filtra documentos com base nos valores de um campo específico.
+ Você precisa classificar documentos de forma eficiente por um campo específico.
+ Você deseja garantir a exclusividade de um campo específico em todos os documentos de uma coleção criando um índice exclusivo.

## Propriedades de índice suportadas
<a name="indexes-single-field-properties"></a>


| Opção | 3.6 | 4,0 | 5,0 | 8.0 | Cluster elástico | 
| --- | --- | --- | --- | --- | --- | 
| [name](index-property-name.md) | Sim | Sim | Sim | Sim | Sim | 
| [único](index-property-unique.md) | Sim | Sim | Sim | Sim | Sim | 
| [esparso \*](index-property-sparse.md) | Sim | Sim | Sim | Sim | Sim | 
| [parcial FilterExpression](index-property-partialfilterexpression.md) \* | Não | Não | Sim | Sim | Não | 
| [expirar AfterSeconds](index-property-expireafterseconds.md) | Sim | Sim | Sim | Sim | Sim | 

\* As `partialFilterExpression` opções `sparse` e não podem ser usadas juntas na mesma definição de índice. Se você tentar criar um índice com essas opções, ele falhará com o seguinte erro:

```
Error in specification: cannot mix partialFilterExpression and sparse options
```

## Criação de um único índice de campo
<a name="indexes-single-field-creating"></a>

Use o `createIndex()` método para criar um único índice de campo. A sintaxe é: `db.collection.createIndex(<key>, <options>)`.

O `key` parâmetro é um documento JSON que especifica o campo e a ordem de classificação do índice:

```
{
  "<field>": <1 (ascending)|-1 (descending)>
}
```

O `options` parâmetro é um documento JSON que especifica as opções para o índice:

```
{
  "name": "<name>",
  "unique": <true | false>,
  "sparse": <true | false>,
  "partialFilterExpression": <filter expression>,
  "expireAfterSeconds": <seconds before expiry>
}
```

Consulte [Propriedades do índice](index-properties.md) para ver exemplos de criação de índices de campo único.