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

จัดระเบียบด้วย CTE

ก่อนหน้านี้ คุณได้ปรับแต่งคิวรีจากแบบฝึกหัดในบทที่ 2 โดยใช้ common table expressions

คราวนี้ มาต่อยอดแบบฝึกหัดนั้นด้วยการดูรายละเอียดของแมตช์ที่มีสกอร์สูงมาก โดยใช้ CTE เช่นเดียวกับ subquery ใน FROM คุณสามารถ join ตารางต่าง ๆ ภายใน CTE ได้เช่นกัน

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

การจัดการข้อมูลใน SQL

ดูคอร์ส

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

  • ประกาศ CTE โดยสร้างรายการแมตช์ทั้งหมดพร้อม name ของลีก
  • เลือก league, date, home และ away goals จาก CTE
  • กรอง คิวรีหลักให้แสดงเฉพาะแมตช์ที่มีประตูรวม 10 ประตูขึ้นไป

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

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

-- Set up your CTE
___ match_list ___ (
  -- Select the league name, date, home, and away goals
    SELECT 
  		___ AS league, 
     	___, 
  		___, 
  		m.away_goal,
       (m.home_goal + m.away_goal) AS total_goals
    FROM match AS m
    LEFT JOIN league as l ON m.country_id = l.id)
-- Select the league, date, home, and away goals from the CTE
SELECT ___, date, ___, away_goal
FROM ___
-- Filter by total goals
WHERE total_goals ___;
แก้ไขและรันโค้ด