Profit pe lună
După ce a prioritizat restaurantele și a încheiat acorduri cu acestea pe baza profiturilor totale, Alice vrea să urmărească profiturile Delivr pe lună, pentru a vedea cum evoluează compania. Ești aici să o ajuți.
Îți sunt puse la dispoziție două CTE-uri. Primul stochează venitul, iar al doilea stochează costul. Pentru a accesa venitul și costul într-o singură interogare, cele două CTE-uri sunt unite în interogarea finală. De acolo, poți aplica formula profitului Profit = Revenue - Cost pentru a calcula profitul pe lună.
Reține că venitul reprezintă suma prețului fiecărei mese înmulțit cu cantitatea comandată, iar costul reprezintă suma costului fiecărei mese înmulțit cu cantitatea aprovizionată.
Acest exercițiu face parte din cursul
Analiza datelor de business în SQL
Instrucțiuni pentru exercițiu
- Calculează venitul pe lună în CTE-ul
revenue. - Calculează costul pe lună în CTE-ul
cost. - Unește cele două CTE-uri și calculează profitul pe lună.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
-- 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;