การแสดงภาพระยะเวลาและค่าใช้จ่ายของการชาร์จ
ทีมแสดงภาพข้อมูลต้องการวิเคราะห์ข้อมูลการชาร์จในมุมมองที่แตกต่างออกไป พวกเขาอยากเข้าใจระยะเวลาของการชาร์จแต่ละครั้งที่สถานีชาร์จแต่ละแห่งในแต่ละวัน รวมถึงต้องการเปรียบเทียบค่าใช้จ่ายของแต่ละเซสชันกับค่าเฉลี่ยของสถานีชาร์จนั้น ๆ หน้าที่ของคุณคือเตรียมชุดข้อมูลสำหรับให้ทีมนำไปแสดงภาพ
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Window Functions ใน Snowflake
คำแนะนำการฝึกหัด
- ใช้ window function เพื่อหาสัดส่วนของ
charging_durationรวมทั้งหมดสำหรับแต่ละเซสชันในแต่ละcharging_station_location - หาผลต่างระหว่างค่าใช้จ่ายการชาร์จของแต่ละเซสชันกับค่าเฉลี่ย
charging_costของcharging_station_locationนั้น โดยตั้งชื่อแทนผลลัพธ์ว่าcost_vs_avg - เรียงลำดับผลลัพธ์ตาม
charging_station_locationและcharging_date
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
SELECT
charging_station_location,
TO_DATE(charging_start_time) AS charging_date,
charging_duration,
charging_cost,
-- Find the proportion of total charging duration charging location
charging_duration / ___(___) OVER(
PARTITION BY ___
) AS proportion_of_daily_charging_duration,
-- Determine the difference between each session's charging
-- cost and the average charging cost for each charging station location
charging_cost - ___(___) OVER (
PARTITION BY ___
) AS ___
FROM ELECTRIC_VEHICLES.charging
-- Order the results by charging station location and charging date
ORDER BY ___, ___;