CommencezCommencez gratuitement

Profit par mois

Après avoir classé les restaurants partenaires et négocié selon leurs profits globaux, Alice veut suivre les profits mensuels de Delivr pour évaluer la performance. Vous êtes là pour l'aider.

On vous fournit deux CTE. Le premier stocke le revenu et le second, le coût. Pour accéder au revenu et au coût dans une seule requête, les deux CTE sont joints dans la dernière requête. À partir de là, vous pouvez appliquer la formule du profit Profit = Revenue - Cost pour calculer le profit par mois.

Rappelez-vous que le revenu correspond à la somme du prix de chaque plat multiplié par sa quantité commandée, et que le coût correspond à la somme du coût de chaque plat multiplié par sa quantité stockée.

Cette activité fait partie du cours

Analyser des données d'entreprise en SQL

Voir le cours

Instructions de l’exercice

  • Calculez le revenu par mois dans le CTE revenue.
  • Calculez le coût par mois dans le CTE cost.
  • Joignez les deux CTE et calculez le profit par mois.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

-- Set up the revenue CTE
WITH revenue AS ( 
	SELECT
		DATE_TRUNC('month', order_date) :: DATE AS delivr_month,
		___ AS revenue
	FROM meals
	JOIN orders ON meals.meal_id = orders.meal_id
	GROUP BY delivr_month),
-- Set up the cost CTE
  cost AS (
 	SELECT
		DATE_TRUNC('month', stocking_date) :: DATE AS delivr_month,
		___ AS cost
	FROM meals
    JOIN stock ON meals.meal_id = stock.meal_id
	GROUP BY delivr_month)
-- Calculate profit by joining the CTEs
SELECT
	___,
	___
FROM revenue
JOIN cost ON revenue.delivr_month = cost.delivr_month
ORDER BY revenue.delivr_month ASC;
Modifier et exécuter le code