Introduction à MongoDB

Création

La syntaxe de création d'index est la suivante :

db.collection.ensureIndex({champs}, {options})

Parmi les options possibles :

  • unique : pas de doublon ;
  • sparse : le champ doit être présent ;
  • TTL : le document indexé a une durée de vie ;
  • name : le nom de l'index ;
  • background : l'indexation s'effectue en tâche de fond.

Pour les champs, la valeur à positionner est 1 ou -1 selon l'ordre voulu (ascendant ou descendant) des résultats.

Quelques exemples :

> db.movies.ensureIndex({"genre": 1}, {"sparse": true})
> db.movies.ensureIndex({"title": 1}, {"unique": true})
> db.movies.ensureIndex({"actors.last_name": 1, "actors.first_name": -1}, {"name": "actor"})

Suppression

On peut supprimer un index avec la commande suivante : db.collection.dropIndex(name)

Pour être sûr du nom de l'index à supprimer, utilisez la commande db.collection.getIndexes()

Exemple :

> db.movies.dropIndex("actor")