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

Pencere fonksiyonu SQL ile kümülatif toplamlar

Bir pencere fonksiyonu, bir toplama fonksiyonuna benzer; ancak gruplar başına tek bir satır yerine, veri kümesindeki her satır için çıktı üretir.

Toplamayı (aggregation) pencere fonksiyonlarıyla birlikte yapabilirsin. Pencere fonksiyonu kullanarak kümülatif toplam almak, join kullanarak yapılması gerekene göre daha basittir. Sorgu süresi de çok daha hızlı olabilir.

train_id, station, time ve diff_min sütunlarına sahip schedule adlı bir tablo sağlandı. diff_min sütunu, mevcut istasyon ile hat üzerindeki bir sonraki istasyon arasındaki geçen süreyi verir.

Bu egzersiz

Python ile Spark SQL'e Giriş

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

Egzersiz talimatları

  • Bu veri kümesindeki kayıtlara running_total adlı ek bir sütun ekleyen bir sorgu çalıştır. running_total sütunu, diff_min sütununun verdiği istasyon zaman farklarını SUM() ile toplar.
  • Sorguyu çalıştır ve sonucu görüntüle.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

# Add col running_total that sums diff_min col in each group
query = """
SELECT train_id, station, time, diff_min,
____(____) OVER (PARTITION BY ____ ORDER BY ____) AS running_total
FROM schedule
"""

# Run the query and display the result
spark.____(query).show()
Kodu Düzenle ve Çalıştır