การเลือกข้อมูลแบบมีเงื่อนไขและการรวมค่าด้วย CASE WHEN
สามารถใช้คำสั่ง CASE เพื่อกำหนดเงื่อนไขและคำนวณค่าได้ในคราวเดียว โดยการวางคำสั่งนั้นไว้ภายในฟังก์ชัน Aggregate เช่น SUM()
ในแบบฝึกหัดนี้ เป้าหมายคือกรองข้อมูลสำหรับทีมเฉพาะ (Real Sociedad) แล้วคำนวณจำนวนประตูรวมทั้งในบ้านและนอกบ้านในแต่ละฤดูกาล
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การจัดการข้อมูลใน SQL
คำแนะนำการฝึกหัด
- สร้างคำสั่ง
CASEเพื่อคำนวณจำนวนประตูเจ้าบ้านทั้งหมด โดยกรองเฉพาะแถวที่hometeam_idเป็น8560 - สร้างคำสั่ง
CASEที่สองเพื่อคำนวณจำนวนประตูทีมเยือนทั้งหมด โดยกรองเฉพาะแถวที่awayteam_idเป็น8560และตั้งชื่อคอลัมน์นี้ว่าaway_goals - จัดกลุ่มผลลัพธ์ของคิวรีตาม
season
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
SELECT season,
-- SUM the home goals
___(___ ___ hometeam_id = 8560 THEN ___ END) AS home_goals,
-- SUM the away goals
___
FROM match
-- Group the results by season
___