Medium
Given the following 'orders' and 'order_items' tables:
orders:
| order_id | customer_id |
|----------|-------------|
| 1 | 1 |
| 2 | 2 |
| 3 | 1 |
order_items:
| order_item_id | order_id | product_id | quantity |
|---------------|----------|------------|----------|
| 1 | 1 | 1 | 2 |
| 2 | 1 | 2 | 1 |
| 3 | 2 | 1 | 1 |
Which SQL query retrieves the order_id and total number of items for each order?
Author: Vincent CotroStatus: PublishedQuestion passed 1544 times
Edit
3
Community Evaluations
Anas
09/11/2023
SELECT order_id, COUNT(*) FROM order_items GROUP BY order_id; â Cette requĂȘte compterait le nombre de lignes (entries) d'articles pour chaque commande, ce qui n'est pas la mĂȘme chose que la somme des quantitĂ©s de ces articles.
SELECT order_id, COUNT(order_item_id) FROM order_items GROUP BY order_id; â Semblable Ă la premiĂšre, cette requĂȘte compterait le nombre d'identifiants d'articles par commande, qui ne correspond pas non plus Ă la quantitĂ© totale des produits.
SELECT order_id, COUNT(product_id) FROM order_items GROUP BY order_id; â Encore une fois, cette requĂȘte compterait le nombre de produits distincts par commande, sans tenir compte de la quantitĂ© de chaque produit.
La bonne requĂȘte est je pense :
SELECT order_id, SUM(quantity) FROM order_items GROUP BY order_id;
Merci de me corriger si je me trompe. Bon courage
Sélomé
20/12/2023
La réponse est bien SELECT order_id, SUM(quantity) FROM order_items GROUP BY order_id ?
mais dans la correction il est indiqué que c'est plutÎt : SELECT order_id, COUNT(*) FROM order_items GROUP BY order_id
Quelqu'un pourrait m'expliquer en quoi avec un count(*) on peut avoir le nombre total de quantité?
Merci par avance :)
Similar QuestionsMore questions about SQL