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

การกรองข้อมูลด้วย Subquery

อีกวิธีหนึ่งในการกรองข้อมูลจากตารางอื่นคือการใช้ subquery โดยมีขั้นตอนดังนี้

  1. สร้าง subquery ที่แสดงผลเป็นรายการข้อมูล
  2. ในคิวรีหลัก ให้เพิ่มคำสั่ง WHERE ที่อ้างอิงรายการดังกล่าว

เป้าหมายคือสร้างรายงานเดียวกับแบบฝึกหัดที่ผ่านมา ซึ่งมีลักษณะดังนี้

  • คอลัมน์แรกคือ bronze_medals หรือจำนวน bronze ทั้งหมด
  • คอลัมน์ที่สองคือ silver_medals หรือจำนวน silver ทั้งหมด
  • คอลัมน์ที่สามคือ gold_medals หรือจำนวน gold ทั้งหมด
  • แสดงเฉพาะข้อมูลจาก summer_games เท่านั้น
  • กรองเฉพาะนักกีฬาที่มีอายุ 16 ปีหรือน้อยกว่า

ในแบบฝึกหัดนี้ ให้ใช้วิธี subquery

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

การรายงานผลด้วย SQL

ดูคอร์ส

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

  • สร้างคิวรีที่ดึงข้อมูล bronze_medals, silver_medals และ gold_medals ทั้งหมดจาก summer_games
  • สร้าง subquery ที่แสดงผลนักกีฬาทุกคนที่มีอายุ 16 ปีหรือน้อยกว่า
  • เพิ่มคำสั่ง WHERE ที่อ้างอิง subquery เพื่อกรองเฉพาะนักกีฬาที่มีอายุ 16 ปีหรือน้อยกว่า

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

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

-- Pull summer bronze_medals, silver_medals, and gold_medals
SELECT 
	____, 
    ____, 
    ____
FROM ____
-- Add the WHERE statement below
WHERE ____ IN
    -- Create subquery list for athlete_ids age 16 or below    
    (SELECT ____
     FROM ____
     WHERE ____);
แก้ไขและรันโค้ด