Aan de slagBegin gratis

Winst per maand

Na het prioriteren en het sluiten van deals met eetgelegenheden op basis van hun totale winst wil Alice de maandelijkse winst van Delivr bijhouden om te zien hoe goed het gaat. Jij gaat haar helpen.

Je krijgt twee CTE's. De eerste slaat de omzet op en de tweede de kosten. Om omzet en kosten in één query te gebruiken, worden de twee CTE's in de laatste query samengevoegd. Vanaf daar kun je de formule voor winst Profit = Revenue - Cost toepassen om de winst per maand te berekenen.

Onthoud dat de omzet de som is van de prijs van elke maaltijd keer de bestelhoeveelheid, en dat de kosten de som zijn van de kostprijs van elke maaltijd keer de aangevulde hoeveelheid.

Deze oefening maakt deel uit van de cursus

Zakelijke data analyseren in SQL

Bekijk cursus

Oefeninstructies

  • Bereken de omzet per maand in de CTE revenue.
  • Bereken de kosten per maand in de CTE cost.
  • Voeg de twee CTE's samen en bereken de winst per maand.

Interactieve oefening met praktijkervaring

Probeer deze oefening door deze voorbeeldcode aan te vullen.

-- 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;
Code bewerken en uitvoeren