

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Indici a campo singolo
<a name="indexes-single-field"></a>

Gli indici a campo singolo memorizzano le informazioni di ogni singolo campo in una raccolta di documenti. Per impostazione predefinita, tutte le raccolte hanno un indice sul `_id` campo. È possibile aggiungere indici aggiuntivi per velocizzare le interrogazioni e le operazioni importanti.

Gli indici a campo singolo sono utili quando:
+ L'applicazione interroga o filtra spesso i documenti in base ai valori di un campo specifico.
+ È necessario ordinare in modo efficiente i documenti in base a un campo particolare.
+ Desiderate garantire l'unicità di un campo specifico tra i documenti di una raccolta creando un indice univoco.

## Proprietà dell'indice supportate
<a name="indexes-single-field-properties"></a>


| Opzione | 3.6 | 4.0 | 5.0 | 8.0 | Cluster elastico | 
| --- | --- | --- | --- | --- | --- | 
| [name](index-property-name.md) | Sì  | Sì | Sì | Sì | Sì | 
| [unico](index-property-unique.md) | Sì  | Sì | Sì | Sì | Sì | 
| [sparso \*](index-property-sparse.md) | Sì  | Sì | Sì | Sì | Sì | 
| [parziale\* FilterExpression](index-property-partialfilterexpression.md) | No | No | Sì | Sì | No | 
| [scadere AfterSeconds](index-property-expireafterseconds.md) | Sì  | Sì | Sì | Sì | Sì | 

\* Le `partialFilterExpression` opzioni `sparse` and non possono essere utilizzate insieme nella stessa definizione di indice. Se si tenta di creare un indice con queste opzioni, l'operazione avrà esito negativo e verrà visualizzato il seguente errore:

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

## Creazione di un indice a campo singolo
<a name="indexes-single-field-creating"></a>

Utilizzate il `createIndex()` metodo per creare un indice di campo singolo. La sintassi è:`db.collection.createIndex(<key>, <options>)`.

Il `key` parametro è un documento JSON che specifica il campo e l'ordinamento dell'indice:

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

Il `options` parametro è un documento JSON che specifica le opzioni per l'indice:

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

Vedi [Index Properties](index-properties.md) per esempi di creazione di indici a campo singolo.