ค้นหา Outlier
จากแบบฝึกหัดก่อนหน้า เราพบว่าวันเสาร์เป็นวันที่มีการใช้บริการ BikeShare มากที่สุดในเดือน ลองมาดูกันว่ามีวันเสาร์บางวันที่เป็น outlier และส่งผลต่อตัวเลขนั้นหรือไม่
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การเขียนฟังก์ชันและ Stored Procedures ใน SQL Server
คำแนะนำการฝึกหัด
- ใช้
SUM()และDATEDIFF()เพื่อหาจำนวนชั่วโมงการเดินทางรวมต่อวัน โดยเริ่มคำนวณจากหน่วยวินาที - ใช้
CONVERT()เพื่อSELECTเฉพาะส่วนวันที่จากStartDate - ใช้
DATENAME()และCONVERT()เพื่อเลือกWEEKDAY - ใช้
WHEREเพื่อกรองเฉพาะวันเสาร์
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
SELECT
-- Calculate TotalRideHours using SUM() and DATEDIFF()
___(___(___, StartDate, EndDate))/ 3600 AS TotalRideHours,
-- Select the DATE portion of StartDate
___(___, StartDate) AS DateOnly,
-- Select the WEEKDAY
___(___, ___(___, StartDate)) AS DayOfWeek
FROM CapitalBikeShare
-- Only include Saturday
WHERE ___(___, StartDate) = 'Saturday'
GROUP BY CONVERT(DATE, StartDate);