Vše dohromady!
Nastal čas prověřit všechno, co ses naučil/a. Generální ředitel tvé firmy potřebuje dashboard s přehledem klíčových metrik každé nabíjecí stanice – jako je spotřebovaná energie nebo cena nabíjení. Než ho postavíš, musíš připravit dataset, který tato data zpřístupní.
Toto cvičení je součástí kurzu
Window Functions ve Snowflake
Pokyny k cvičení
- Přiřaď každé nabíjecí relaci na dané
charging_station_locationpořadí podleenergy_consumed, od největší hodnoty po nejmenší. - Vypočítej průběžný součet
charging_costpodlecharging_station_location. - Sestav okenní rámec zahrnující dvě předchozí a dvě následující relace a vypočítej klouzavý průměr
energy_consumedpodlecharging_station_location.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
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;