Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
site:enseignement:master:mlbda:tmes:couchbase [15/12/2021 17:28] amine [Requêtes complexes] |
site:enseignement:master:mlbda:tmes:couchbase [09/12/2024 12:00] (Version actuelle) hubert |
||
---|---|---|---|
Ligne 31: | Ligne 31: | ||
===== Questions ===== | ===== Questions ===== | ||
- | ==== Requêtes simples ==== | + | ==== Exercice 1 ==== |
Ligne 48: | Ligne 48: | ||
</showif> | </showif> | ||
- | 2. La liste des prix des 10 premiers produits. | + | 2. La liste des prix des 10 premiers produits triés par prix décroissant. |
<showif isloggedin> | <showif isloggedin> | ||
<code sql> | <code sql> | ||
Ligne 60: | Ligne 60: | ||
=== Sélection === | === Sélection === | ||
- | 3. Les identifiants des produits (productId) ayant une note (rating) de 5. | + | 3. Les identifiants des produits (productId) ayant au moins une note (rating) de 5. Les identifiants de produits sont tous distincts dans le reéultat. |
- | <fc #ffa500>Résultat : 1708 lignes</fc> | + | <fc #ffa500>Résultat : 782 lignes</fc> |
<showif isloggedin> | <showif isloggedin> | ||
<code sql> | <code sql> | ||
- | SELECT productId | + | SELECT DISTINCT productId |
FROM reviews | FROM reviews | ||
where rating = 5 | where rating = 5 | ||
Ligne 116: | Ligne 116: | ||
7. Les identifiants des clients (customerId) dont tout les produits achetés le sont avec une quantité > 4. | 7. Les identifiants des clients (customerId) dont tout les produits achetés le sont avec une quantité > 4. | ||
+ | Ne retourner que les customerId uniques. | ||
- | <fc #ffa500>Résultat : 488 lignes</fc> | + | <fc #ffa500>Résultat : 387 lignes</fc> |
<showif isloggedin> | <showif isloggedin> | ||
<code sql> | <code sql> | ||
- | SELECT customerId | + | SELECT DISTINCT customerId |
FROM purchases | FROM purchases | ||
WHERE EVERY item IN purchases.lineItems SATISFIES item.count > 4 END | WHERE EVERY item IN purchases.lineItems SATISFIES item.count > 4 END | ||
Ligne 268: | Ligne 269: | ||
- | ==== Requêtes complexes ==== | + | ==== Exercice 2 ==== |
1. Donner la liste de 10 produits qui se trouvent dans la catégorie "golf" (indépendamment de la casse), omettre les 10 premiers produits. | 1. Donner la liste de 10 produits qui se trouvent dans la catégorie "golf" (indépendamment de la casse), omettre les 10 premiers produits. | ||
Ligne 763: | Ligne 764: | ||
</code> | </code> | ||
</showif> | </showif> | ||
+ | |||
+ | <fc #ffa500>Résultat : 10 lignes </fc> | ||
+ | <code> | ||
+ | { | ||
+ | "results": [ | ||
+ | { | ||
+ | "emailAddress": "mabel_oberbrunner@mueller.net", | ||
+ | "firstName": "Vernon", | ||
+ | "lastName": "Satterfield", | ||
+ | "purchaseCount": 140, | ||
+ | "totalSpent": 27847 | ||
+ | }, | ||
+ | { | ||
+ | "emailAddress": "opal@gaylordpouros.info", | ||
+ | "firstName": "Nikolas", | ||
+ | "lastName": "Zulauf", | ||
+ | "purchaseCount": 185, | ||
+ | "totalSpent": 27004 | ||
+ | }, | ||
+ | { | ||
+ | "emailAddress": "fabian.west@handmoen.org", | ||
+ | "firstName": "Verlie", | ||
+ | "lastName": "Fahey", | ||
+ | "purchaseCount": 112, | ||
+ | "totalSpent": 26234 | ||
+ | }, | ||
+ | { | ||
+ | "emailAddress": "helena@waltercummings.org", | ||
+ | "firstName": "Cary", | ||
+ | "lastName": "Jerde", | ||
+ | "purchaseCount": 125, | ||
+ | "totalSpent": 26035 | ||
+ | }, | ||
+ | { | ||
+ | "emailAddress": "lia@kohler.biz", | ||
+ | "firstName": "Carolanne", | ||
+ | "lastName": "Hegmann", | ||
+ | "purchaseCount": 133, | ||
+ | "totalSpent": 24875 | ||
+ | }, | ||
+ | { | ||
+ | "emailAddress": "benedict@hirtheborer.net", | ||
+ | "firstName": "Coralie", | ||
+ | "lastName": "O'Kon", | ||
+ | "purchaseCount": 125, | ||
+ | "totalSpent": 23348 | ||
+ | }, | ||
+ | { | ||
+ | "emailAddress": "jolie@beer.info", | ||
+ | "firstName": "Madison", | ||
+ | "lastName": "Klocko", | ||
+ | "purchaseCount": 151, | ||
+ | "totalSpent": 21687 | ||
+ | }, | ||
+ | { | ||
+ | "emailAddress": "tyrese@auersimonis.biz", | ||
+ | "firstName": "Luna", | ||
+ | "lastName": "Rodriguez", | ||
+ | "purchaseCount": 166, | ||
+ | "totalSpent": 21564 | ||
+ | }, | ||
+ | { | ||
+ | "emailAddress": "jonatan_armstrong@cruickshank.info", | ||
+ | "firstName": "Rossie", | ||
+ | "lastName": "Padberg", | ||
+ | "purchaseCount": 95, | ||
+ | "totalSpent": 21318 | ||
+ | }, | ||
+ | { | ||
+ | "emailAddress": "tess@bergnaum.name", | ||
+ | "firstName": "Jeremie", | ||
+ | "lastName": "Runolfsson", | ||
+ | "purchaseCount": 182, | ||
+ | "totalSpent": 21221 | ||
+ | } | ||
+ | ] | ||
+ | } | ||
+ | </code> | ||
+ | |||
12. Donner les nombre total de clients par région. Le résultat doit être trié par ordre décroissant du nombre de clients. | 12. Donner les nombre total de clients par région. Le résultat doit être trié par ordre décroissant du nombre de clients. | ||
Ligne 790: | Ligne 870: | ||
</showif> | </showif> | ||
+ | <fc #ffa500>Résultat : 1 ligne </fc> | ||
+ | <code> | ||
+ | { | ||
+ | "results": [ | ||
+ | { | ||
+ | "$1": 529 | ||
+ | } | ||
+ | ] | ||
+ | } | ||
+ | </code> | ||
14. Afficher les produits dont la note moyenne est inférieure à 1. Pour chaque produit on veut connaître son som, son identifiant et la note moyenne. | 14. Afficher les produits dont la note moyenne est inférieure à 1. Pour chaque produit on veut connaître son som, son identifiant et la note moyenne. | ||
Ligne 802: | Ligne 892: | ||
</code> | </code> | ||
</showif> | </showif> | ||
+ | |||
+ | <code> | ||
+ | { | ||
+ | "results": [ | ||
+ | { | ||
+ | "avgRating": 0.667, | ||
+ | "name": "New Commercial Stainless Steel Salt / Pepper / Spice / Sugar Shaker, Shakers, Dredge, Dredges, Set of 2", | ||
+ | "numReviews": 6, | ||
+ | "productId": "product96" | ||
+ | }, | ||
+ | { | ||
+ | "avgRating": 0.5, | ||
+ | "name": "Danze D481150 9-Inch Adjustable Shower Arm with High Flow, Chrome", | ||
+ | "numReviews": 6, | ||
+ | "productId": "product476" | ||
+ | }, | ||
+ | { | ||
+ | "avgRating": 0.889, | ||
+ | "name": "Tovolo Sphere Ice Molds, Set of 2", | ||
+ | "numReviews": 9, | ||
+ | "productId": "product53" | ||
+ | }, | ||
+ | { | ||
+ | "avgRating": 0.889, | ||
+ | "name": "Briggs & Riley Luggage Executive Clamshell Backpack", | ||
+ | "numReviews": 9, | ||
+ | "productId": "product10" | ||
+ | }, | ||
+ | { | ||
+ | "avgRating": 0.75, | ||
+ | "name": "Britax B-Agile Stroller Child Tray", | ||
+ | "numReviews": 4, | ||
+ | "productId": "product83" | ||
+ | } | ||
+ | ] | ||
+ | } | ||
+ | </code> | ||
+ | |||
15. Pour chaque date d'achat (année et mois) donner le prix de tous les achats effectués à cette date. Le prix sera exprimé en millions de dollars (arrondi à 3 chiffres après la virgule). Ordonner le résultat par ordre croissant de la date. | 15. Pour chaque date d'achat (année et mois) donner le prix de tous les achats effectués à cette date. Le prix sera exprimé en millions de dollars (arrondi à 3 chiffres après la virgule). Ordonner le résultat par ordre croissant de la date. | ||
Ligne 816: | Ligne 944: | ||
</code> | </code> | ||
</showif> | </showif> | ||
+ | |||
+ | <code> | ||
+ | { | ||
+ | "results": [ | ||
+ | { | ||
+ | "month": "2013-05", | ||
+ | "revenueMillion": 0.611 | ||
+ | }, | ||
+ | { | ||
+ | "month": "2013-06", | ||
+ | "revenueMillion": 0.68 | ||
+ | }, | ||
+ | { | ||
+ | "month": "2013-07", | ||
+ | "revenueMillion": 0.601 | ||
+ | }, | ||
+ | { | ||
+ | "month": "2013-08", | ||
+ | "revenueMillion": 0.596 | ||
+ | }, | ||
+ | { | ||
+ | "month": "2013-09", | ||
+ | "revenueMillion": 0.554 | ||
+ | }, | ||
+ | { | ||
+ | "month": "2013-10", | ||
+ | "revenueMillion": 0.617 | ||
+ | }, | ||
+ | { | ||
+ | "month": "2013-11", | ||
+ | "revenueMillion": 0.595 | ||
+ | }, | ||
+ | { | ||
+ | "month": "2013-12", | ||
+ | "revenueMillion": 0.596 | ||
+ | }, | ||
+ | { | ||
+ | "month": "2014-01", | ||
+ | "revenueMillion": 0.613 | ||
+ | }, | ||
+ | { | ||
+ | "month": "2014-02", | ||
+ | "revenueMillion": 0.587 | ||
+ | }, | ||
+ | { | ||
+ | "month": "2014-03", | ||
+ | "revenueMillion": 0.624 | ||
+ | }, | ||
+ | { | ||
+ | "month": "2014-04", | ||
+ | "revenueMillion": 0.602 | ||
+ | }, | ||
+ | { | ||
+ | "month": "2014-05", | ||
+ | "revenueMillion": 0.628 | ||
+ | } | ||
+ | ] | ||
+ | } | ||
+ | </code> | ||
16. Donner les achats au mois d'Avril 2014 pour des produits dont le prix unitaire est supérieur à 500 dollars. Pour chaque achat on veut connaître son identifiant, l'identifiant du produit acheté, le nom du produit et son prix unitaire. | 16. Donner les achats au mois d'Avril 2014 pour des produits dont le prix unitaire est supérieur à 500 dollars. Pour chaque achat on veut connaître son identifiant, l'identifiant du produit acheté, le nom du produit et son prix unitaire. | ||
Ligne 833: | Ligne 1020: | ||
</showif> | </showif> | ||
- | ===== Utilisation de Couchbase en local (facultatif) ===== | ||
- | ==== Depuis les machines de la PPTI ==== | + | <code> |
+ | { | ||
+ | "results": [ | ||
+ | { | ||
+ | "name": "Brother PQ1500S High Speed Quilting and Sewing Machine", | ||
+ | "product": "product221", | ||
+ | "purchaseId": "purchase1533", | ||
+ | "unitPrice": 599 | ||
+ | }, | ||
+ | { | ||
+ | "name": "Diamondback 2013 Recoil 29'er Full Suspension Mountain Bike with 29-Inch Wheels", | ||
+ | "product": "product788", | ||
+ | "purchaseId": "purchase170", | ||
+ | "unitPrice": 700 | ||
+ | }, | ||
+ | { | ||
+ | "name": "TOTO SW564T695-12 Washlet S400 Elongated Front Toilet Seat for G-Max Toilets with Auto Flush System, Sedona Beige", | ||
+ | "product": "product490", | ||
+ | "purchaseId": "purchase1760", | ||
+ | "unitPrice": 1094.46 | ||
+ | }, | ||
+ | { | ||
+ | "name": "LG 3.6 CF FRONT LOAD WASHER DRYER COMBO", | ||
+ | "product": "product160", | ||
+ | "purchaseId": "purchase1917", | ||
+ | "unitPrice": 1499 | ||
+ | }, | ||
+ | { | ||
+ | "name": "LG 3.6 CF FRONT LOAD WASHER DRYER COMBO", | ||
+ | "product": "product160", | ||
+ | "purchaseId": "purchase2195", | ||
+ | "unitPrice": 1499 | ||
+ | }, | ||
+ | { | ||
+ | "name": "LG 3.6 CF FRONT LOAD WASHER DRYER COMBO", | ||
+ | "product": "product160", | ||
+ | "purchaseId": "purchase2316", | ||
+ | "unitPrice": 1499 | ||
+ | }, | ||
+ | { | ||
+ | "name": "TOTO SW564T695-12 Washlet S400 Elongated Front Toilet Seat for G-Max Toilets with Auto Flush System, Sedona Beige", | ||
+ | "product": "product293", | ||
+ | "purchaseId": "purchase2372", | ||
+ | "unitPrice": 1094.46 | ||
+ | }, | ||
+ | { | ||
+ | "name": "Archie Eli & Peyton Manning NFL Duke Football", | ||
+ | "product": "product839", | ||
+ | "purchaseId": "purchase2500", | ||
+ | "unitPrice": 1249.99 | ||
+ | }, | ||
+ | { | ||
+ | "name": "Eli Manning NFL Duke Football", | ||
+ | "product": "product836", | ||
+ | "purchaseId": "purchase2891", | ||
+ | "unitPrice": 599.99 | ||
+ | }, | ||
+ | { | ||
+ | "name": "Archie Eli & Peyton Manning NFL Duke Football", | ||
+ | "product": "product839", | ||
+ | "purchaseId": "purchase2907", | ||
+ | "unitPrice": 1249.99 | ||
+ | }, | ||
+ | { | ||
+ | "name": "LG 3.6 CF FRONT LOAD WASHER DRYER COMBO", | ||
+ | "product": "product160", | ||
+ | "purchaseId": "purchase3010", | ||
+ | "unitPrice": 1499 | ||
+ | }, | ||
+ | { | ||
+ | "name": "Diamondback 2013 Recoil 29'er Full Suspension Mountain Bike with 29-Inch Wheels", | ||
+ | "product": "product788", | ||
+ | "purchaseId": "purchase3278", | ||
+ | "unitPrice": 700 | ||
+ | }, | ||
+ | { | ||
+ | "name": "Eli Manning NFL Duke Football", | ||
+ | "product": "product836", | ||
+ | "purchaseId": "purchase3476", | ||
+ | "unitPrice": 599.99 | ||
+ | }, | ||
+ | { | ||
+ | "name": "TOTO MS854114SL-01 Ultramax ADA One Piece Toilet, Cotton White", | ||
+ | "product": "product506", | ||
+ | "purchaseId": "purchase3685", | ||
+ | "unitPrice": 502.37 | ||
+ | }, | ||
+ | { | ||
+ | "name": "Eli Manning Signed Super Bowl XLVI Football", | ||
+ | "product": "product833", | ||
+ | "purchaseId": "purchase3685", | ||
+ | "unitPrice": 599.99 | ||
+ | }, | ||
+ | { | ||
+ | "name": "Archie Eli & Peyton Manning NFL Duke Football", | ||
+ | "product": "product839", | ||
+ | "purchaseId": "purchase3949", | ||
+ | "unitPrice": 1249.99 | ||
+ | }, | ||
+ | { | ||
+ | "name": "TOTO SW564T695-12 Washlet S400 Elongated Front Toilet Seat for G-Max Toilets with Auto Flush System, Sedona Beige", | ||
+ | "product": "product293", | ||
+ | "purchaseId": "purchase4281", | ||
+ | "unitPrice": 1094.46 | ||
+ | }, | ||
+ | { | ||
+ | "name": "Diamondback 2013 Recoil 29'er Full Suspension Mountain Bike with 29-Inch Wheels", | ||
+ | "product": "product788", | ||
+ | "purchaseId": "purchase4660", | ||
+ | "unitPrice": 700 | ||
+ | }, | ||
+ | { | ||
+ | "name": "Eli Manning Signed Super Bowl XLVI Football w/ SB XLVI MVP Insc.", | ||
+ | "product": "product838", | ||
+ | "purchaseId": "purchase5042", | ||
+ | "unitPrice": 799.99 | ||
+ | }, | ||
+ | { | ||
+ | "name": "Danby DDW1899WP 8 Place Setting Portable Dishwasher - White", | ||
+ | "product": "product203", | ||
+ | "purchaseId": "purchase5321", | ||
+ | "unitPrice": 524 | ||
+ | }, | ||
+ | { | ||
+ | "name": "Diamondback 2013 Recoil 29'er Full Suspension Mountain Bike with 29-Inch Wheels", | ||
+ | "product": "product788", | ||
+ | "purchaseId": "purchase545", | ||
+ | "unitPrice": 700 | ||
+ | }, | ||
+ | { | ||
+ | "name": "Danby DDW1899WP 8 Place Setting Portable Dishwasher - White", | ||
+ | "product": "product203", | ||
+ | "purchaseId": "purchase5483", | ||
+ | "unitPrice": 524 | ||
+ | }, | ||
+ | { | ||
+ | "name": "Eli Manning Signed Super Bowl XLVI Football", | ||
+ | "product": "product833", | ||
+ | "purchaseId": "purchase568", | ||
+ | "unitPrice": 599.99 | ||
+ | }, | ||
+ | { | ||
+ | "name": "Eli Manning NFL Duke Football", | ||
+ | "product": "product836", | ||
+ | "purchaseId": "purchase6223", | ||
+ | "unitPrice": 599.99 | ||
+ | }, | ||
+ | { | ||
+ | "name": "Diamondback 2013 Recoil 29'er Full Suspension Mountain Bike with 29-Inch Wheels", | ||
+ | "product": "product788", | ||
+ | "purchaseId": "purchase6491", | ||
+ | "unitPrice": 700 | ||
+ | }, | ||
+ | { | ||
+ | "name": "Danby DDW1899WP 8 Place Setting Portable Dishwasher - White", | ||
+ | "product": "product203", | ||
+ | "purchaseId": "purchase7679", | ||
+ | "unitPrice": 524 | ||
+ | }, | ||
+ | { | ||
+ | "name": "Eli Manning NFL Duke Football", | ||
+ | "product": "product836", | ||
+ | "purchaseId": "purchase8069", | ||
+ | "unitPrice": 599.99 | ||
+ | }, | ||
+ | { | ||
+ | "name": "TOTO SW564T695-12 Washlet S400 Elongated Front Toilet Seat for G-Max Toilets with Auto Flush System, Sedona Beige", | ||
+ | "product": "product293", | ||
+ | "purchaseId": "purchase8390", | ||
+ | "unitPrice": 1094.46 | ||
+ | }, | ||
+ | { | ||
+ | "name": "TOTO SW564T695-12 Washlet S400 Elongated Front Toilet Seat for G-Max Toilets with Auto Flush System, Sedona Beige", | ||
+ | "product": "product293", | ||
+ | "purchaseId": "purchase8539", | ||
+ | "unitPrice": 1094.46 | ||
+ | }, | ||
+ | { | ||
+ | "name": "Oeuf Sparrow Crib, White", | ||
+ | "product": "product606", | ||
+ | "purchaseId": "purchase8764", | ||
+ | "unitPrice": 760 | ||
+ | }, | ||
+ | { | ||
+ | "name": "LG 3.6 Cu. Ft. White Front Load Steam Washer - WM2650HRA", | ||
+ | "product": "product167", | ||
+ | "purchaseId": "purchase8886", | ||
+ | "unitPrice": 892.49 | ||
+ | }, | ||
+ | { | ||
+ | "name": "TOTO SW564T695-12 Washlet S400 Elongated Front Toilet Seat for G-Max Toilets with Auto Flush System, Sedona Beige", | ||
+ | "product": "product490", | ||
+ | "purchaseId": "purchase9007", | ||
+ | "unitPrice": 1094.46 | ||
+ | }, | ||
+ | { | ||
+ | "name": "LG 3.6 CF FRONT LOAD WASHER DRYER COMBO", | ||
+ | "product": "product160", | ||
+ | "purchaseId": "purchase9210", | ||
+ | "unitPrice": 1499 | ||
+ | }, | ||
+ | { | ||
+ | "name": "LG 3.6 Cu. Ft. White Front Load Steam Washer - WM2650HRA", | ||
+ | "product": "product167", | ||
+ | "purchaseId": "purchase9374", | ||
+ | "unitPrice": 892.49 | ||
+ | }, | ||
+ | { | ||
+ | "name": "Eli Manning NFL Duke Football", | ||
+ | "product": "product836", | ||
+ | "purchaseId": "purchase9591", | ||
+ | "unitPrice": 599.99 | ||
+ | }, | ||
+ | { | ||
+ | "name": "EdgeStar 2.0 Cu. Ft. Ventless Combo Washer/Dryer - White", | ||
+ | "product": "product158", | ||
+ | "purchaseId": "purchase9598", | ||
+ | "unitPrice": 830.99 | ||
+ | }, | ||
+ | { | ||
+ | "name": "Diamondback 2013 Recoil 29'er Full Suspension Mountain Bike with 29-Inch Wheels", | ||
+ | "product": "product788", | ||
+ | "purchaseId": "purchase9646", | ||
+ | "unitPrice": 700 | ||
+ | }, | ||
+ | { | ||
+ | "name": "Diamondback 2013 Recoil 29'er Full Suspension Mountain Bike with 29-Inch Wheels", | ||
+ | "product": "product788", | ||
+ | "purchaseId": "purchase9668", | ||
+ | "unitPrice": 700 | ||
+ | } | ||
+ | ] | ||
+ | } | ||
+ | </code> | ||
+ | ===== Utilisation de Couchbase en local (facultatif) ===== | ||