Sliding Window เบื้องต้น
Sliding window ช่วยให้คำนวณค่าสะสมระหว่างจุดสองจุดใดก็ได้ในหน้าต่างข้อมูล โดยใช้คีย์เวิร์ดอย่าง PRECEDING, FOLLOWING และ CURRENT ROW ซึ่งสามารถใช้คำนวณจำนวนนับ ผลรวม ค่าเฉลี่ย และฟังก์ชัน aggregate อื่นๆ ในช่วงข้อมูลที่กำหนดได้
ในแบบฝึกหัดนี้ จะได้ต่อยอดจากตัวอย่างในวิดีโอ โดยคำนวณผลรวมสะสมของประตูที่ FC Utrecht ทำได้ในฐานะทีมเจ้าบ้านในฤดูกาล 2011/2012 ลองดูว่าพวกเขาทำประตูได้มากกว่าในช่วงท้ายฤดูกาลในฐานะเจ้าบ้านหรือทีมเยือน
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การจัดการข้อมูลใน SQL
คำแนะนำการฝึกหัด
- เติมฟังก์ชันหน้าต่างให้สมบูรณ์ โดย:
- คำนวณผลรวมสะสมของประตูเจ้าบ้านที่ FC Utrecht ทำได้
- คำนวณค่าเฉลี่ยสะสมของประตูเจ้าบ้านที่ทำได้
- เรียงลำดับทั้งค่าเฉลี่ยสะสมและผลรวมสะสม
BYคอลัมน์date
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
SELECT
date,
home_goal,
away_goal,
-- Create a running total and running average of home goals
___(home_goal) ___(ORDER BY ___
ROWS BETWEEN ___ ___ AND ___ ___) AS running_total,
___(home_goal) ___(ORDER BY ___
ROWS BETWEEN ___ ___ AND ___ ___) AS running_avg
FROM match
WHERE
hometeam_id = 9908
AND season = '2011/2012';