BaşlayınÜcretsiz Başlayın

Hepsini bir araya getirme zamanı!

İşte geldik finala! Öğrendiklerinin hepsini sınama zamanı. Şirketinin CEO’su, her şarj lokasyonunun üst düzey metriklerine derinlemesine bakabileceği bir pano istiyor. Buna tüketilen enerji ve şarj maliyeti gibi veriler de dahil. Bu panoyu oluşturmadan önce, bu bilgileri öne çıkaran bir veri kümesi hazırlaman gerekiyor.

Bu egzersiz

Snowflake'ta Pencere Fonksiyonları

kursunun bir parçasıdır
Kursu Görüntüle

Egzersiz talimatları

  • Belirli bir charging_station_location içindeki her şarj oturumuna, energy_consumed değerine göre büyükten küçüğe bir sıralama ver.
  • charging_station_location bazında charging_cost için bir koşan toplam (running total) üret.
  • charging_station_location bazında energy_consumed için bir hareketli ortalama bulmak üzere, önceki iki ve sonraki iki oturumu kullanan bir pencere çerçevesi oluştur.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

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;
Kodu Düzenle ve Çalıştır