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

Bir window fonksiyonu ekle

Harika! Artık maç tarihini, ev sahibi takımı, deplasman takımını ve her takımın attığı golleri getiren bir sonuç kümen var. Sorunun son bir bileşeni kaldı -- Manchester United her maçta ne kadar kötü kaybetti?

Bunu belirlemek için, ana sorguya home_goal ile away_goal arasındaki farkın mutlak değerine göre maçları sıralayan bir window fonksiyonu ekleyelim. Böylece Manchester United'ın ev sahibi mi yoksa deplasmanda mı oynadığını düşünmeden skor farklarını doğrudan karşılaştırabiliriz!

Denklem senin için tamamlandı -- yapman gereken tek şey window fonksiyonunu doğru şekilde tamamlamak!

Bu egzersiz, kursun bir parçasıdır

SQL ile Veri İşleme

Kursa Göz Atın

Egzersiz talimatları

  • CTE'leri, hem ev sahibi hem de deplasman takımlarının her birinin ad, ID ve skorla ilişkilendirileceği şekilde kur.
  • Ana sorguda date, home team name, away team name, home goals ve away goals değerlerini seç.
  • Maçları sırala ve skor farkına göre azalan düzende order et.

Uygulamalı etkileşimli egzersiz

Bu egzersizi bu örnek kodu tamamlayarak deneyin.

-- Set up the home team CTE
___ ___ ___ (
  SELECT m.id, t.team_long_name,
	  CASE WHEN m.home_goal > m.away_goal THEN 'MU Win'
		   WHEN m.home_goal < m.away_goal THEN 'MU Loss' 
  		   ELSE 'Tie' END AS outcome
  FROM match AS m
  LEFT JOIN team AS t ON m.hometeam_id = t.team_api_id),
-- Set up the away team CTE
___ ___ (
  SELECT m.id, t.team_long_name,
	  CASE WHEN m.home_goal > m.away_goal THEN 'MU Loss'
		   WHEN m.home_goal < m.away_goal THEN 'MU Win' 
  		   ELSE 'Tie' END AS outcome
  FROM match AS m
  LEFT JOIN team AS t ON m.awayteam_id = t.team_api_id)
-- Select columns and and rank the matches by goal difference
SELECT DISTINCT
    ___,
    ___.___ AS home_team,
    ___.___ AS away_team,
    m.home_goal, m.away_goal,
    ___() ___(___ ___ ABS(home_goal - away_goal) ___) as match_rank
-- Join the CTEs onto the match table
FROM match AS m
___ JOIN ___ ON m.id = ___
___ JOIN ___ ON m.id = ___
WHERE m.season = '2014/2015'
      AND ((home.team_long_name = 'Manchester United' AND home.outcome = 'MU Loss')
      OR (away.team_long_name = 'Manchester United' AND away.outcome = 'MU Loss'));
Kodu Düzenle ve Çalıştır