9.3. Interroger des documents dans MongoDB : utiliser la méthode findOne()

Página 29

MongoDB est une base de données NoSQL open source qui offre une prise en charge hautes performances, une haute disponibilité et une évolutivité facile. Il travaille sur la notion de collections et de documents. Dans ce chapitre, nous verrons comment interroger des documents d'une collection dans MongoDB.

L'une des opérations les plus courantes que vous devrez effectuer sur une base de données MongoDB est l'interrogation de documents. L'interrogation est le processus de récupération de documents d'une collection. MongoDB fournit un certain nombre de méthodes pour accomplir cette tâche, dont la méthode findOne().

La méthode findOne() est utilisée pour renvoyer un seul document répondant aux critères spécifiés. Si plusieurs documents correspondent aux critères, cette méthode renvoie le premier document selon l'ordre naturel, qui reflète l'ordre des documents sur le disque.

La syntaxe de base de la méthode findOne() est la suivante :

db.collection.findOne (requête, projection)

Où :

  • db est la base de données actuelle.
  • collection est la collection dans laquelle vous recherchez le document.
  • query est un document qui spécifie les conditions de recherche. Il s'agit d'un paramètre facultatif.
  • projection est un document qui spécifie les champs à retourner dans le document résultant. Il s'agit d'un paramètre facultatif.

Supposons que nous disposions de la collection de documents suivante :

{ "_id": 1, "nom": "Maria", "âge": 25, "profession": "Ingénieur" }, { "_id": 2, "nom": "Jean", "âge": 30, "profession": "Médecin" }, { "_id": 3, "nom": "Ana", "âge": 35, "profession": "Avocat" }

Si nous voulons trouver le document dont le champ "nom" est "Maria", nous pouvons utiliser la méthode findOne() comme suit :

db.collection.findOne({"nom": "Maria"})

Le résultat sera le premier document correspondant à la requête :

{ "_id": 1, "nom": "Maria", "âge": 25, "profession": "Ingénieur" }

Maintenant, disons que nous souhaitons renvoyer uniquement le champ « profession » dans le document résultant. Nous pouvons le faire en spécifiant le champ "profession" dans le paramètre de projection :

db.collection.findOne({"nom": "Maria"}, {"profession": 1})

Le résultat sera :

{ "_id": 1, "profession": "Ingénieur" }

Notez que le champ "_id" est toujours renvoyé sauf si vous l'excluez explicitement.

La méthode findOne() est extrêmement utile pour récupérer un seul document d'une collection. N'oubliez pas cependant qu'il renvoie le premier document correspondant à la requête. Si vous devez récupérer tous les documents correspondant à la requête, vous devez utiliser la méthode find().

En résumé, MongoDB propose une variété de méthodes pour interroger des documents, chacune avec ses propres utilisations et avantages. La méthode findOne() n'est qu'une de ces méthodes, mais elle est l'une des plus couramment utilisées en raison de sa simplicité et de son efficacité.

Répondez maintenant à l’exercice sur le contenu :

Quelle méthode MongoDB est utilisée pour renvoyer un seul document qui répond aux critères spécifiés, et si plusieurs documents correspondent aux critères, renvoie le premier document selon l'ordre naturel ?

Tu as raison! Félicitations, passez maintenant à la page suivante

Vous avez raté! Essayer à nouveau.

Page suivante de lebook gratuit :

309.4. Interrogation de documents dans MongoDB : interrogation de documents à l'aide d'opérateurs de requête

Obtenez votre certificat pour ce cours gratuitement ! en téléchargeant lapplication Cursa et en lisant lebook qui sy trouve. Disponible sur Google Play ou App Store !

Get it on Google Play Get it on App Store

+ 6,5 millions
d'étudiants

Certificat gratuit et
valide avec QR Code

48 mille exercices
gratuits

Note de 4,8/5 dans les
magasins d'applications

Cours gratuits en
vidéo, audio et texte