# Індекси

Коли ми даємо команду знайти щось для нас, MongoDB змушений перебирати кожен документ в колекції, щоб порівняти вказане поле (або поля) і вирішити чи повертати цей документ. Для великих об'ємів даних така операція може тривати надто довго.

Щоб спростити роботу MongoDB можна створити індекси для полів, по який роблять вибірку

```
db.<назва_колекції>.createIndex({name: 1}) // А-Я
```

Після чого запити і сортування по цьому полю будуть швидші

Видалити індекс просто:

```
db.<назва_колекції>.dropIndex({name: 1})
```

Список допустимих індексів

```
db.<назва_колекції>.getIndexes({name: 1})
```

> За замовчуванням MongoDB створює індекс для системного поля \_id, сортований по зростанню (А-Я).

### Складні індекси <a href="#skladni-indeksi" id="skladni-indeksi"></a>

Якщо в запиті бере участь більше, ніж 1 поле, ви можете створити комбінований індекс. Нехай наш запит містить і поле name, і поле age, тоді є сенс створити комбінований індекс, який включає їх обох:

```
db.<назва_колекції>.createIndex({name: 1, age: -1})
```
