Aggregation Functions
Coddy'nin SQL Journey'sinin Temeller bölümünün bir parçası — ders 68 / 72.
Toplama (Aggregation) fonksiyonları, geçerli satıra kadar AVG() veya MAX() veya başka herhangi bir toplama fonksiyonunu hesaplamak için kullanılır.
Örneğin, her bitiş dönemine 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 şunları döndürecektir:
| month | revenue | 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 ve 8. ay için 61'dir. Bunun nedeni, yeni ve daha büyük bir gelir bulduğunda eski olanı bırakıp şimdiye kadarki en büyüğünü kullanmasıdır.
AVG() fonksiyonu için şu şekilde görünecektir:
SELECT month, revenue, AVG(revenue) OVER (ORDER BY month ASC) as avg_revenue
from table1| ay | gelir | ortalama_gelir |
| 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 gruplandırabiliriz. Örneğin:
SELECT month, revenue, region,
MAX(revenue) OVER (PARTITION BY region ORDER BY month ASC) as max_revenue
FROM table1Bize şunu verir:
| ay | gelir | bölge | maks_gelir |
| 4 | 40 | Doğu | 40 |
| 5 | 20 | Doğu | 40 |
| 6 | 60 | Batı | 60 |
| 7 | 55 | Batı | 60 |
| 8 | 61 | Doğu | 61 |
Artık maksimum değer her bölge için ayrı ayrı hesaplanır. Doğu bölgesi ve Batı bölgesi kendi hareketli maksimumlarını bağımsız olarak sürdürür.
Görev
KolayMevcut tablolar ve sütunlar:
<strong>books</strong>:<strong>book</strong>,<strong>page</strong>,<strong>words</strong>
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:
- O kitaptaki herhangi bir sayfada bulunan maksimum kelime sayısı
- Tüm kitap için sayfa başına ortalama kelime sayısı
- Mevcut sayfanın 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ıralanmış 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
4More Keywords
The IN keywordThe BETWEEN keywordThe LIKE keywordThe AS keywordRecap - Cellphone Models2Conditions
Conditions BasicsThe AND keywordThe OR keywordThe NOT keywordMultiple Conditions CombinedParenthesisBooleans5Arithmetic Operations
Mathematical OperatorsMathematical ColumnsThe Modulo OperationThe ROUND() Function3Specific Return Format
Null valuesSort Results Part 1Sort Results Part 2Recap - Cyber Security FirmLimit number of recordsRecap - Vehicle Factory6Intro Challenges
Recap - Parliamentary ElectionRecap - Police Criminal ArrestRecap - Bar Beverage ContainerRecap - Engineer new columns9Multiple tables
Basic Join Part 1Basic Join Part 2Recap - JoinSelf joinRecap - Self JoinUnionSimplify queries, WITH keywordRecap - With QueriesRecap - Real Estate Contractor12Window Functions part 2
RANK & DENSE_RANK FunctionsRecap - RANK & DENSE_RANKNTILE FunctionAggregation FunctionsROWS & RANGE Criterion