Question from the MongoDB test

Get the list of customers linked to a given list of orders requires exactly 1 query

Medium

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.

Une autre modélisation possible est la suivante :

# paysagistes
{
   _id: ObjectId("4c0791e2b9ec877893f3363a"),
   name: "John Lennon",
   disponibilites: [{
  _id: ObjectId("4c0791e2b9ec877893f3363d"),
  start_date: ISODate("2010-04-30T00:00:00.000Z"),
  end_date: ISODate("2010-04-31T00:00:00.000Z")
}]
}

# clients
{
   _id: ObjectId("4c0791e2b9ec877893f3363a"),
   name: "Paul McChicken",   
   commandes: [{
  	_id: ObjectId("4c0791e2b9ec877893f3363j"),
disponibilites: [ObjectId("4c0791e2b9ec877893f3363d")]
   }]
}

Sélectionnez les déclarations vraies :

Author: InconnuStatus: PublishedQuestion passed 256 times
Edit
1
Community EvaluationsNo one has reviewed this question yet, be the first!