เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

กำไรแยกตาม eatery

Delivr กำลังเจรจาสัญญาใหม่กับ eatery ต่างๆ โดย eatery ที่สร้างกำไรได้มากกว่าจะได้รับอัตราที่ Delivr ยินดีจ่ายสูงขึ้นสำหรับการซื้อมื้ออาหารในปริมาณมาก

ทีม Business Development ขอให้หากำไรที่แต่ละ eatery สร้างขึ้น เพื่อเสริมความแข็งแกร่งในการเจรจา

หมายเหตุ: ไม่จำเป็นต้องใช้ GROUP BY ตาม eatery ในคิวรีสุดท้าย เพราะได้จัดกลุ่มตาม eatery ใน CTE ของ revenue และ cost ไว้แล้ว สิ่งที่ต้องทำเพียงอย่างเดียวคือ join CTE ทั้งสองเข้าด้วยกัน เพื่อให้ได้ revenue และ cost ของแต่ละ eatery ในแถวเดียว เนื่องจาก revenue และ cost มีข้อมูลเพียงแถวเดียวต่อ eatery จึงไม่จำเป็นต้องจัดกลุ่มเพิ่มเติมอีก

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

การวิเคราะห์ข้อมูลธุรกิจด้วย SQL

ดูคอร์ส

คำแนะนำการฝึกหัด

  • คำนวณ revenue แยกตาม eatery ใน CTE ชื่อ revenue
  • คำนวณ cost แยกตาม eatery ใน CTE ชื่อ cost
  • Join CTE ทั้งสองเข้าด้วยกัน แล้วคำนวณกำไรแยกตาม eatery

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

WITH revenue AS (
  -- Calculate revenue per eatery
  SELECT ___,
         ___ AS revenue
    FROM meals
    JOIN orders ON meals.meal_id = orders.meal_id
   GROUP BY eatery),

  cost AS (
  -- Calculate cost per eatery
  SELECT ___,
         ___ AS cost
    FROM meals
    JOIN stock ON meals.meal_id = stock.meal_id
   GROUP BY eatery)

   -- Calculate profit per eatery
   SELECT ___,
          ___
     FROM revenue
     JOIN cost ON revenue.eatery = cost.eatery
    ORDER BY profit DESC;
แก้ไขและรันโค้ด