維持充電器效率
隨著車用充電器老化,效率往往會下降。營運團隊想要主動進行維護,並找出何時可能需要更換充電器。為了做到這點,他們希望有一份報表,能追蹤最近 3 次充電的充電速率變化。看看你能不能幫他們一把!
本練習屬於課程
Snowflake 的 Window Functions
練習說明
- 使用視窗函式,找出當前工作階段的
charging_rate與往前第 3 個工作階段的charging_rate之差。 - 以
charging_station_location對結果集做分割(PARTITION),確保每個充電站的結果彼此獨立。 - 以升冪使用
charging_start_time來決定各工作階段的先後順序。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
SELECT
user_id,
charging_station_location,
charging_start_time,
charging_rate,
-- Difference between current charging rate versus three sessions ago
___ - ___(___, ___, 0) OVER(
-- Make sure results are partitioned by charging_station_location
___
-- Sessions should be ordered by when charging began
___
) AS change_in_charging_rate
FROM ELECTRIC_VEHICLES.charging;