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

การดึงค่าชั่วโมงจากข้อมูลเวลา

ทีมของคุณได้รับมอบหมายให้จัดทำรายงานสรุปเพื่อทำความเข้าใจว่าช่วงเวลาใดของวันที่มีการออกใบสั่งจอดรถมากที่สุด ฟิลด์ violation_time ถูกนำเข้าฐานข้อมูลในรูปแบบสตริงที่ประกอบด้วยชั่วโมง (ในรูปแบบ 12 ชั่วโมง) นาที และตัวระบุ AM/PM ของแต่ละการละเมิด ตัวอย่างเวลาที่จัดเก็บในฟิลด์นี้คือ '1225AM' สังเกตว่าไม่มีเครื่องหมายโคลอนและช่องว่างในรูปแบบนี้

ใช้ฟังก์ชัน TO_TIMESTAMP() พร้อมสตริงรูปแบบที่เหมาะสมเพื่อแปลง violation_time ให้เป็น TIMESTAMP จากนั้นดึงค่าชั่วโมงจากส่วน TIME ของ TIMESTAMP นั้น และนับจำนวนการละเมิดการจอดรถทั้งหมดแยกตามชั่วโมง การแปลงเป็นค่า TIME มีสาเหตุมาจากที่ violation_time ไม่มีข้อมูลวันที่

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

การทำความสะอาดข้อมูลในฐานข้อมูล PostgreSQL

ดูคอร์ส

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

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

SELECT
  -- Convert violation_time to a TIMESTAMP
  ___(___, ___)::TIME AS violation_time
FROM
  parking_violation
WHERE
  -- Exclude NULL violation_time
  ___ IS NOT ___;
แก้ไขและรันโค้ด