Les opérateurs : $size,$all,$elemMatch
1.Opérateur $size
$size:permet de vérifier si le nombre d'élément d'un tableau est égale à un nombre donné Exemples:Afficher la liste des produits qui ont trois promotions seulement Afficher la liste des produits qui ont deux promotion et appartient à 3 catégories
1.Opérateur $all
$all:permet de vérifier si un tableau contient une lite d'élements $all :retourne true si les trois elements: element1,element2,et element3 existent dans le tabelau tableauxExemples:
Afficher la liste des produits qui ont les promotions :janvier et mars
2.Opérateur $elemMatch
$elemMatch:permet de vérifier si un tableau contient la valeur passée $operateur un opérateur parmis :$eq,$ne,$lt,$gt,$lte,$gteExemple:
Afficher les produit qui ont la promotion du mois janvier
Exemples
- 11Comment puis-je trouver tous les produits qui ont à la fois "janvier" et "octobre" comme mois de promotion ? Utilisez la méthode find() avec l'opérateur $all pour rechercher les produits avec les deux mois de promotion :
- 12Comment puis-je trouver tous les produits avec une catégorie contenant une description qui commence par "une" ? Utilisez la méthode find() avec l'opérateur $elemMatch et $regex pour rechercher les produits avec des catégories correspondantes :
- 13Comment puis-je trouver le produit dont le fournisseur a un numéro de téléphone égal à "0315455" ? Utilisez la méthode findOne() pour trouver le premier produit avec le numéro de téléphone du fournisseur spécifié :
- 14Comment puis-je trouver tous les produits dont la quantité de catégories est supérieure à 2 ? Utilisez la méthode find() avec l'opérateur $where et JavaScript pour rechercher les produits avec plus de 2 catégories :
- 15Comment puis-je trouver tous les produits ayant à la fois "category1" et "category2" comme noms de catégorie dans leurs catégories ? Utilisez la méthode find() avec l'opérateur $and pour rechercher les produits avec les deux catégories :
- 16Comment puis-je trouver le premier produit avec le nom de catégorie "category1" dans ses catégories ? Utilisez la méthode findOne() avec l'opérateur $elemMatch pour rechercher le premier produit avec la catégorie correspondante :
- 17Comment puis-je trouver tous les produits dont la quantité est égale à 40 ? Utilisez la méthode find() avec l'opérateur $eq pour rechercher les produits avec une quantité de 40 :
- 18Comment puis-je trouver tous les produits dont la quantité est différente de 30 ? Utilisez la méthode find() avec l'opérateur $ne pour rechercher les produits avec une quantité différente de 30 :
- 19Comment puis-je trouver tous les noms de fournisseurs distincts parmi tous les produits ? Utilisez la méthode distinct() pour obtenir la liste des noms de fournisseurs uniques :
- 20Comment puis-je trouver tous les produits ayant un fournisseur avec un numéro de téléphone différent de "1234567" ? Utilisez la méthode find() avec l'opérateur $ne pour rechercher les produits avec un fournisseur différent :
- 21Comment puis-je trouver tous les produits dont la quantité de catégories est inférieure à 3 ? Utilisez la méthode find() avec l'opérateur $where et JavaScript pour rechercher les produits avec moins de 3 catégories :
- 22Comment puis-je trouver tous les produits qui ont au moins une catégorie avec une description contenant "catégorie" ? Utilisez la méthode find() avec l'opérateur $elemMatch et $regex pour rechercher les produits avec au moins une catégorie correspondante :
- 23Comment puis-je trouver le produit avec le prix le plus bas ? Utilisez la méthode find() avec l'opérateur $sort pour trier par prix croissant et limit pour obtenir le premier produit :
- 24Comment puis-je trouver tous les produits ayant à la fois "janvier" et "octobre" comme mois de promotion en utilisant l'opérateur $and ? Utilisez la méthode find() avec l'opérateur $and pour rechercher les produits avec les deux mois de promotion :
- 25Comment puis-je trouver le premier produit dont le fournisseur a un numéro de téléphone qui n'est pas "0315455" ? Utilisez la méthode findOne() avec l'opérateur $ne pour trouver le premier produit avec un fournisseur différent :
- 26Comment puis-je trouver tous les produits dont le prix est supérieur à 50 et qui ont à la fois "janvier" et "octobre" comme mois de promotion ? Utilisez la méthode find() avec plusieurs critères pour rechercher les produits correspondants :
- 27Comment puis-je trouver le produit avec le nom de catégorie "category2" dans ses catégories, et dont le fournisseur a un numéro de téléphone commençant par "031" ? Utilisez la méthode find() avec les opérateurs $elemMatch et $regex pour rechercher le produit correspondant :
- 28Comment puis-je trouver tous les produits ayant une catégorie avec une description commençant par "une" et un fournisseur dont le nom est "fournisseur1" ? Utilisez la méthode find() avec les opérateurs $elemMatch et $and pour rechercher les produits correspondants :
- 29Comment puis-je trouver tous les produits ayant au moins deux catégories et un mois de promotion "janvier" ? Utilisez la méthode find() avec les opérateurs $size et $all pour rechercher les produits correspondants :
- 30Comment puis-je trouver tous les produits ayant au moins une catégorie avec une description contenant "catégorie" et un fournisseur avec un numéro de téléphone différent de "1234567" ? Utilisez la méthode find() avec les opérateurs $elemMatch et $ne pour rechercher les produits correspondants :
- 31Comment puis-je trouver tous les produits dont la quantité est inférieure à 50 et qui ont au moins une catégorie avec une description contenant "une" ? Utilisez la méthode find() avec les opérateurs $lt, $elemMatch, et $regex pour rechercher les produits correspondants :
- 32Comment puis-je trouver tous les produits dont la quantité est égale à 40 et qui ont au moins une catégorie avec une description commençant par "une" ou "deux" ? Utilisez la méthode find() avec les opérateurs $eq, $elemMatch, et $or pour rechercher les produits correspondants :
- 33Comment puis-je trouver le produit avec le nom de catégorie "category1" dans ses catégories, et un fournisseur avec un numéro de téléphone commençant par "031545" ? Utilisez la méthode findOne() avec les opérateurs $elemMatch et $regex pour rechercher le produit correspondant :
- 34Comment puis-je trouver tous les produits ayant au moins une catégorie avec une description contenant "catégorie1" et au moins un mois de promotion "janvier" ? Utilisez la méthode find() avec les opérateurs $elemMatch et $or pour rechercher les produits correspondants :
- 35Comment puis-je trouver tous les produits ayant exactement deux catégories, dont l'une a une description commençant par "une" et l'autre a une description contenant "deux" ? Utilisez la méthode find() avec l'opérateur $size et les opérateurs $elemMatch et $regex pour rechercher les produits correspondants :
- 36Comment puis-je trouver tous les produits dont le prix est supérieur à 50, ayant à la fois "janvier" et "octobre" comme mois de promotion, et dont le fournisseur a un numéro de téléphone commençant par "031" ? Utilisez la méthode find() avec plusieurs critères pour rechercher les produits correspondants :
- 37Comment puis-je trouver le produit avec au moins deux catégories, dont l'une a une description commençant par "une" et l'autre a une description contenant "deux", et dont le fournisseur a un nom différent de "fournisseur2" ? Utilisez la méthode findOne() avec les opérateurs $size, $elemMatch, $regex, et $ne pour rechercher le produit correspondant :
- 38Comment puis-je trouver tous les produits qui ont au moins une catégorie avec une description commençant par "une" et un mois de promotion "janvier" ou "mars" ? Utilisez la méthode find() avec les opérateurs $elemMatch et $or pour rechercher les produits correspondants :
- 39Comment puis-je trouver le produit avec le nom de catégorie "category2" dans ses catégories, dont le fournisseur a un numéro de téléphone différent de "0315455" ? Utilisez la méthode findOne() avec les opérateurs $elemMatch et $ne pour rechercher le produit correspondant :
- 40Comment puis-je trouver tous les produits ayant au moins une catégorie avec une description commençant par "catégorie"1 et un fournisseur dont le nom est "fournisseur1" ou "fournisseur2" ? Utilisez la méthode find() avec les opérateurs $elemMatch et $or pour rechercher les produits correspondants :
- 41Comment puis-je trouver tous les produits ayant exactement deux catégories, dont l'une a une description commençant par "une" et l'autre a une description contenant "catégorie" ? Utilisez la méthode find() avec l'opérateur $size et les opérateurs $elemMatch et $regex pour rechercher les produits correspondants :
- 42Comment puis-je trouver le produit avec un prix supérieur à 50 et dont le fournisseur a un nom différent de "fournisseur2" ? Utilisez la méthode findOne() avec les opérateurs $gt et $ne pour rechercher le produit correspondant :
- 43Comment puis-je trouver tous les produits ayant à la fois "janvier" et "octobre" comme mois de promotion et un fournisseur dont le nom est "fournisseur1" ? Utilisez la méthode find() avec les opérateurs $and pour rechercher les produits correspondants :
- 44Comment puis-je trouver tous les produits dont la quantité est supérieure à 30, ayant au moins une catégorie avec une description contenant "deux" et un mois de promotion "mars" ? Utilisez la méthode find() avec les opérateurs $gt, $elemMatch, et $and pour rechercher les produits correspondants :