นักกีฬาเหรียญทองในอนาคต
ฟังก์ชันการดึงข้อมูล (Fetching) ช่วยให้นำค่าจากส่วนต่าง ๆ ของตารางมาแสดงในแถวเดียวกันได้ หากข้อมูลเรียงตามลำดับเวลา ก็สามารถ "มองไปข้างหน้า" ได้ด้วยฟังก์ชัน LEAD ซึ่งมีประโยชน์มากเมื่อต้องการเปรียบเทียบค่าปัจจุบันกับค่าในอนาคต
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
PostgreSQL Summary Stats and Window Functions
คำแนะนำการฝึกหัด
- สำหรับแต่ละปี ให้ดึงข้อมูลนักกีฬาเหรียญทองในปัจจุบัน และนักกีฬาเหรียญทองที่อยู่ห่างออกไป 3 การแข่งขันจากแถวปัจจุบัน
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
WITH Discus_Medalists AS (
SELECT DISTINCT
Year,
Athlete
FROM Summer_Medals
WHERE Medal = 'Gold'
AND Event = 'Discus Throw'
AND Gender = 'Women'
AND Year >= 2000)
SELECT
-- For each year, fetch the current and future medalists
___,
___,
___ OVER (ORDER BY ___ ASC) AS Future_Champion
FROM Discus_Medalists
ORDER BY Year ASC;