Toplama Fonksiyonları
Coddy'nin SQL Journey'sinin Temeller bölümünün bir parçası. Ders 68 / 72.
Toplama işlevleri, geçerli satıra kadar AVG() veya MAX() ya da diğer herhangi bir toplama işlevini hesaplamak için kullanılır.
Örneğin, her bir dönem sonuna kadar elde ettiğimiz maksimum geliri hesaplayabiliriz:
| ay | gelir | bölge |
| 4 | 40 | Doğu |
| 5 | 20 | Doğu |
| 6 | 60 | Batı |
| 7 | 55 | Batı |
| 8 | 61 | Doğu |
SELECT month, revenue, MAX(revenue) OVER (ORDER BY month ASC) as max_revenue
from table1Bu, şunu döndürecektir:
| ay | gelir | max_revenue |
| 4 | 40 | 40 |
| 5 | 20 | 40 |
| 6 | 60 | 60 |
| 7 | 55 | 60 |
| 8 | 61 | 61 |
4. ve 5. aylar için maksimum gelir 40, 6. ve 7. aylar için 60, 8. ay için ise 61’dir. Bunun nedeni, yeni ve daha büyük bir gelir bulduğunda eskisini bırakıp o ana kadarki en büyüğü kullanmasıdır.
AVG() işlevi için şöyle görünecektir:
SELECT month, revenue, AVG(revenue) OVER (ORDER BY month ASC) as avg_revenue
from table1| ay | gelir | avg_revenue |
| 4 | 40 | 40 |
| 5 | 20 | 30 |
| 6 | 60 | 40 |
| 7 | 55 | 43.75 |
| 8 | 61 | 47.2 |
Hesaplamalarımızı PARTITION BY kullanarak belirli kategorilere göre de gruplayabiliriz. Örneğin:
SELECT month, revenue, region,
MAX(revenue) OVER (PARTITION BY region ORDER BY month ASC) as max_revenue
FROM table1Bize şunu verirdi:
| ay | gelir | bölge | max_revenue |
| 4 | 40 | East | 40 |
| 5 | 20 | East | 40 |
| 6 | 60 | West | 60 |
| 7 | 55 | West | 60 |
| 8 | 61 | East | 61 |
Şimdi maksimum, her bölge için ayrı ayrı hesaplanır. Doğu bölgesi ve Batı bölgesi, kendi devam eden maksimumlarını bağımsız olarak korur.
Görev
KolayKullanılabilir tablolar ve sütunlar:
books:book,page,words
Her kitap için kitap adını, toplam sayfa sayısını, her sayfadaki kelime sayısını görüntüleyin ve şunları hesaplayın:
- Bu kitaptaki herhangi bir sayfada bulunan maksimum kelime sayısı
- Tüm kitap için sayfa başına ortalama kelime sayısı
- Mevcut sayfadaki kelime sayısı ile kitabın sayfa başına ortalama kelime sayısı arasındaki fark
Sonuçları kitap ve sayfa numarasına göre sıralı olarak görüntüleyin.
Aşağıdaki sütunları döndürün:
bookpagewordsmax_words_in_bookavg_words_per_pagediff_from_avg
Kendin dene
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Temeller bölümündeki tüm dersler
4Daha Fazla Anahtar Sözcük
IN anahtar sözcüğüBETWEEN anahtar sözcüğüLIKE anahtar sözcüğüAS anahtar sözcüğüTekrar - Cep Telefonu Modelleri2Koşullar
Koşulların TemelleriAND Anahtar SözcüğüOR Anahtar SözcüğüNOT Anahtar SözcüğüBirden Çok Koşulu BirleştirmeParantezlerBoolean Değerler3Belirli Döndürme Biçimi
Null değerlerSonuçları Sıralama 1. BölümSonuçları Sıralama 2. BölümTekrar - Siber Güvenlik FirmasıKayıt Sayısını SınırlamaTekrar - Araç Fabrikası6Giriş Alıştırmaları
Tekrar - Parlamento SeçimiTekrar - Polisin Suçluyu TutuklamasıTekrar - Bar İçecek KabıTekrar - Mühendis Yeni Sütunlar9Birden Çok Tablo
Temel JOIN Bölüm 1Temel JOIN Bölüm 2Tekrar - JOINKendine JOINTekrar - Kendine JOINUNIONSorguları Basitleştirme, WITH Anahtar SözcüğüTekrar - WITH SorgularıTekrar - Gayrimenkul Müteahhidi12Pencere Fonksiyonları 2. Bölüm
RANK ve DENSE_RANK FonksiyonlarıTekrar - RANK ve DENSE_RANKNTILE FonksiyonuToplama FonksiyonlarıROWS ve RANGE ÖlçütüKendi başına pratik yap: SQL playground