การปรับรูปแบบเที่ยวบินให้สอดคล้องกัน I
การทำความสะอาดข้อมูลเป็นสิ่งสำคัญ เพราะในทางปฏิบัติข้อมูลที่ได้รับมามักไม่เป็นระเบียบและยังไม่พร้อมสำหรับการวิเคราะห์
ในแบบฝึกหัดนี้ ให้ดึงข้อมูลทุกรายการที่มีจำนวนเที่ยวบินล่าช้ามากกว่า 100 ครั้งจากตาราง flight_statistics จากนั้นให้นำ carrier_code, registration_code และ airport_code มาเชื่อมรวมกันในคอลัมน์เดียว โดยให้มีรูปแบบตามนี้: "AA - 000000119, JFK"
เมื่อวิเคราะห์ตาราง flight_statistics แล้วพบว่า registration_code บางรายการมีรูปแบบที่แตกต่างกัน โดย registration_code ที่ถูกต้องต้องมีตัวเลข 9 หลัก หากมีน้อยกว่านั้น ต้องเติมเลขศูนย์นำหน้าให้ครบ
สามารถทำได้โดยใช้ฟังก์ชัน REPLICATE() ร่วมกับ LEN() และ CONCAT()
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การทำความสะอาดข้อมูลในฐานข้อมูล SQL Server
คำแนะนำการฝึกหัด
- ใช้ฟังก์ชันที่เหมาะสมในการเชื่อมคอลัมน์
carrier_code, เลขศูนย์นำหน้า,registration_codeและairport_codeเข้าด้วยกัน - ใช้
REPLICATE()เพื่อสร้างเลขศูนย์นำหน้าให้ครบ โดยนำ 9 ลบด้วยความยาวของแต่ละregistration_code - กรองเฉพาะรายการที่คอลัมน์
delayedมีค่ามากกว่า 100
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
SELECT
-- Concat the strings
___(
carrier_code,
' - ',
-- Replicate zeros
___('___', 9 - ___(registration_code)),
registration_code,
', ',
airport_code)
AS registration_code
FROM flight_statistics
-- Filter registers with more than 100 delays
WHERE ___ > 100