การกรองข้อมูลด้วย JOIN
เมื่อต้องการเพิ่มตัวกรองในคิวรีที่จำเป็นต้องอ้างอิงตารางอื่น มีหลายวิธีที่เลือกใช้ได้ วิธีหนึ่งคือใช้ JOIN เพื่อเชื่อมตารางใหม่ แล้วเพิ่มคำสั่ง WHERE ตามปกติ
เป้าหมายคือสร้างรายงานที่มีลักษณะดังนี้:
- คอลัมน์แรกคือ bronze_medals หรือจำนวน
bronzeทั้งหมด - คอลัมน์ที่สองคือ silver_medals หรือจำนวน
silverทั้งหมด - คอลัมน์ที่สามคือ gold_medals หรือจำนวน
goldทั้งหมด - รวมเฉพาะข้อมูลจาก
summer_gamesเท่านั้น - กรองเฉพาะนักกีฬาที่มีอายุ 16 ปีหรือน้อยกว่า
ในแบบฝึกหัดนี้ให้ใช้วิธี JOIN
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การรายงานผลด้วย SQL
คำแนะนำการฝึกหัด
- สร้างคิวรีที่ดึงยอดรวม
bronze_medals,silver_medalsและgold_medalsจากsummer_games - ใช้
JOINและคำสั่งWHEREเพื่อกรองเฉพาะนักกีฬาที่มีอายุ 16 ปีหรือน้อยกว่า
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
-- Pull summer bronze_medals, silver_medals, and gold_medals
SELECT
____,
____,
____
FROM ____ AS s
JOIN ____ AS a
ON ____
-- Filter for athletes age 16 or below
WHERE ____;