Всё вместе!
Вот и финал! Пришло время применить всё, что вы изучили. Генеральный директор вашей компании обратился к вам с просьбой создать дашборд, который даст ему подробное представление о ключевых показателях каждой точки зарядки: потреблённой энергии, стоимости зарядки и других метриках. Прежде чем приступить к построению дашборда, необходимо подготовить набор данных, который предоставит всю эту информацию.
Это упражнение является частью курса
Оконные функции в Snowflake
Инструкции к упражнению
- Присвойте ранг каждой зарядной сессии в рамках заданного
charging_station_locationна основеenergy_consumed— от наибольшего значения к наименьшему. - Сформируйте накопительный итог по
charging_costс разбивкой поcharging_station_location. - Создайте оконный фрейм, включающий две предшествующие и две следующие сессии, чтобы вычислить скользящее среднее по
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;