Об'єднаємо все разом!
Ось і все! Час перевірити все, чого ви навчилися. CEO вашої компанії звернувся до вас із запитом на дашборд, який дасть йому детальний огляд ключових метрик для кожної локації заряджання. Сюди входять дані про спожиту енергію та вартість заряджання. Перш ніж будувати цей дашборд, вам потрібно створити набір даних, у якому буде зібрано цю інформацію.
Ця вправа є частиною курсу
Window Functions in Snowflake
Інструкції до вправи
- Задайте рейтинг для кожної сесії заряджання на певній
charging_station_locationзаenergy_consumedвід найбільшого до найменшого. - Згенеруйте наростальний підсумок (running total)
charging_costу межахcharging_station_location. - Побудуйте кадрове вікно з двох попередніх і двох наступних сесій, щоб знайти ковзну середню (moving average)
energy_consumedу межахcharging_station_location.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
SELECT
charging_station_location,
TO_DATE(charging_start_time),
charging_cost,
energy_consumed,
-- Provide a ranking for each charging session based on energy consumed, from greatest to least
___() OVER(
PARTITION BY charging_station_location
ORDER BY ___
) AS rank_energy_consumed,
-- Generate a "running total" of charging costs by charging station location
SUM(___) OVER(
___ ___ ___
ORDER BY charging_start_time
ROWS BETWEEN ___ ___ AND ___ ___
) AS running_total_charging_cost,
-- Build a window frame using the two preceding and two following sessions to find a moving average of energy consumed
___() OVER(
PARTITION BY ___
ORDER BY charging_start_time
ROWS BETWEEN ___ ___ AND ___ ___
) AS moving_average_energy_consumed
FROM ELECTRIC_VEHICLES.charging
WHERE energy_consumed IS NOT NULL
ORDER BY charging_station_location, charging_start_time;