Built-In Aggregate Part 2
Coddy'nin SQL Journey'sinin Temeller bölümünün bir parçası — ders 35 / 72.
Bazen toplama fonksiyonlarını, her satırı bir toplama değeriyle karşılaştırmak gibi daha karmaşık şekillerde kullanmamız gerekir. İşte bu noktada iç içe geçmiş sorgular (nested queries) oldukça faydalı olur.
Bireysel satırları toplu (aggregate) değerlerle birleştiren hesaplamalar yapmak istediğinizde, iç içe geçmiş bir sorgu (nested query) kullanmanız gerekir. İşte nedeni:
Bu, istediğiniz satır başına sonucu vermeyecektir:
SELECT value + MIN(value)
FROM table1Bunun nedeni, aggregate fonksiyonlarının tüm sütun üzerinde çalışması, 'value' referansının ise satır satır çalışmaya çalışmasıdır. Bunu çözmek için iç içe geçmiş bir sorgu kullanırız:
SELECT value + (SELECT MIN(value) FROM table1)
FROM table1Bu çalışır çünkü iç içe geçmiş sorgu (SELECT MIN(value) FROM table1) önce yürütülür ve tek bir değer döndürür, bu değer daha sonra her satır için ana sorguda kullanılabilir.
İç içe geçmiş agregalar için yaygın kullanım durumları:
1. Her bir değeri ortalama ile karşılaştırmak
2. Toplamın yüzdesini hesaplama
3. Maksimum veya minimum değerlerden farkları bulma
Görev
KolayMevcut tablolar ve sütunlar:
<strong>items</strong>:<strong>id</strong>,<strong>price</strong>
Her bir öğenin fiyatının tüm öğelerin ortalama fiyatını ne kadar aştığını hesaplayın. Öğe kimliğini (ID), fiyatını ve ortalamadan farkını görüntüleyin. Fark sütununu diff_from_avg olarak adlandırın.
Sonuçları farka göre azalan düzende sıralayın.
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 columns