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

Spora göre BKİ aralığı

BKİ'nin her yaz sporunda nasıl değiştiğini anlamak istiyorsun. Bunun için aşağıdakileri içeren bir rapor hazırla:

  • sport, yaz sporunun adı
  • bmi_bucket, BKİ'yi üç gruba ayırır: <.25, .25-.30, >.30
  • athletes, benzersiz sporcu sayısı

Tanım: BKİ = 100 * weight / (height squared).

Ayrıca, CASE ifadelerinin satır satır çalıştığını unutma; bu nedenle ikinci koşul sadece ilk koşul yanlışsa uygulanır. Böylece, daha önce ele alınan koşulları hariç tutmak için bir AND ifadesine ihtiyacın olmaz.

ER Diyagramı'na bakmaktan çekinme.

Bu egzersiz

SQL ile Raporlama

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

Egzersiz talimatları

  • sport, bmi_bucket ve athletes göstermek için summer_games ve athletes tablolarından veri çeken bir sorgu yaz.
  • AND veya ELSE kullanmadan, bmi_bucket alanını üç gruba ayıran bir CASE ifadesi kur: '<.25', '.25-.30' ve '>.30'.
  • Toplanmayan alanlara göre GROUP BY yap.
  • Raporu önce sport'a, sonra da sporcu sayısına göre azalan sırada sırala.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

-- Pull in sport, bmi_bucket, and athletes
SELECT 
	____,
    -- Bucket BMI in three groups: <.25, .25-.30, and >.30	
    CASE WHEN ____ THEN '<.25'
    WHEN ____ THEN '.25-.30'
    WHEN ____ THEN '>.30' END AS bmi_bucket,
    ____ AS athletes
FROM ____ AS s
JOIN ____ AS a
ON ____
-- GROUP BY non-aggregated fields
GROUP BY ____
-- Sort by sport and then by athletes in descending order
ORDER BY ____;
Kodu Düzenle ve Çalıştır