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

Kısaca SQL (2)

Veritabanlarında sık yapılan görevlerden biri de birleştirmedir (aggregation). Yani verini parçalara ayırıp her bir parçayı özetlemek.

SQL'de bu işlem GROUP BY komutuyla yapılır. Bu komut verini gruplara ayırır ve SELECT ifadesindeki bir fonksiyonu her bir gruba uygular.

Örneğin, iki kalkış havalimanının her birinden yapılan uçuşların sayısını öğrenmek istiyorsan, şu sorguyu kullanabilirsin:

SELECT COUNT(*) FROM flights
GROUP BY origin;

GROUP BY origin, çıktıda origin sütunundaki her bir benzersiz değer için bir satır olmasını SQL'e söyler. SELECT ifadesi ise her sütunu doldurmak için hangi değerleri istediğini belirtir. Burada her grup içindeki her satırı COUNT() ile saymak istiyoruz.

Birden fazla sütuna göre GROUP BY yapmak da mümkündür. Bunu yaptığında, ortaya çıkan tabloda her sütundaki benzersiz değerlerin her bir kombinasyonu için bir satır olur. Aşağıdaki sorgu, SEA ve PDX'ten her varış havalimanına giden uçuşların sayısını sayar:

SELECT origin, dest, COUNT(*) FROM flights
GROUP BY origin, dest;

Çıktıda origin ve dest değerlerinin her kombinasyonu için bir satır (yani bir uçağın kalktığı ve indiği her ikili) yer alır. Ayrıca her gruptaki satırların COUNT() değerini içeren bir sütun da olur.

SQL'e daha derinlemesine bakmak istersen, buraya göz atabilirsin.

Bu sorgu hangi bilgiyi getirir? Unutma, flights tablosu 2014 ve 2015'te PDX ve SEA'den kalkan uçuşların bilgilerini tutuyor. AVG() fonksiyonunun bir sütunun ortalama değerini aldığını not et!

SELECT AVG(air_time) / 60 FROM flights
GROUP BY origin, carrier;

Bu egzersiz

PySpark Temelleri

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

Uygulamalı interaktif egzersiz

İnteraktif egzersizlerimizden biriyle teoriyi pratiğe dökün

Egzersizi başlat