fr

Daily Challenge 🗓️

Your daily dose of technical intelligence to shine in (developer) society.

Discover a software development quiz per day with its detailed correction.

Frontend, Backend, Mobile, Data, Web, AI, Infra... Everything that can be coded!

Tuesday 26 May 2026

-

MongoDB

MongoDB #3/18

CE BLOC EST LE MÊME POUR TOUTES LES QUESTIONS

Vous devez concevoir une marketplace de paysagistes.

Une personne peut s'inscrire en tant que paysagiste. Elle choisit alors les services qu'elle propose parmis une liste préétablie. Elle déclare ensuite - en sélectionnant sur un calendrier - ses disponibilités (une date début et une date de fin, les journées sont toujours entières).

Une autre personne peut s'inscrire sur le site en tant que client. Celle-ci peut alors sélectionner le ou les services que'elle recherche. Une liste de paysagistes lui est alors présentée avec un filtre permettant de ne présenter que les paysagistes disponibles pour certaines journées/périodes.

Si le client trouve un paysagiste adéquat, il peut alors sélectionner les dates dont il a effectivement besoin et passe alors une commande.

Toutes les questions du quizz se réfèrent à ce problème.

####Deux importantes contraintes s'ajoutent pour répondre aux questions:

Aucune redondance de donnée n'est tolérée.

On considèrera le stockage de données structurées (tableau, hash, json, etc.) dans un seul champ de données impossible.

Vous décidez d'écrire les disponibilités des paysagistes en embbeded dans la collection paysagistes :

{
   _id: ObjectId("4c0791e2b9ec877893f3363a"),
   name: "John Lennon",
   services: ['sculpture', 'allées', 'labyrinthes'],
   disponibilites: [{
_id: ObjectId("4c0791e2b9ec877893f3363d"),
              	start_date: ISODate("2010-04-30T00:00:00.000Z"),
end_date: ISODate("2010-04-31T00:00:00.000Z")
},
            	{
   		_id: ObjectId("4c0791e2b9ec877893f3363e")
              	start_date: ISODate("2010-06-10T00:00:00.000Z"),
   		end_date: ISODate("2010-06-22T00:00:00.000Z")
            	}]
 }

Vous devez écrire la requête permettant de compter le nombre de paysagistes ayant un certain service et au moins un jour de disponible entre deux dates fournies :

Etant donné la structure des données, quel est le type d'agrégation mongo le plus simple permettant de retourner le résultat demandé ?

Author: InconnuStatus: PublishedQuestion passed 303 times
0
Reviews from developersNo one has reviewed this question yet, be the first!

About Daily Challenge 🗓️

From Monday to Friday, discover each day a quiz question with its detailed answer to enrich your tech knowledge. The questions are proposed by the WeLoveDevs.com community: experienced developers, trainers and freelancers.WeLoveDevs.com helps developers to find their dream job. We also provide over 50 free technical tests in different technologies for those of you who would like to test your knowledge.

History

⚠️
Your browser is badly|not supported!
We recommend you to use a more modern browser such as Edge, Chrome or Firefox
Know More