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

Sporcuları kazandıkları madalyalara göre sıralama

  1. bölümde, sporcuları aldıkları madalya sayısına göre sıralamak için ROW_NUMBER kullanmıştın. Ancak ROW_NUMBER, aynı madalya sayısına sahip sporculara farklı numaralar atar; bu yüzden iyi bir sıralama fonksiyonu değildir. İki sporcu aynı sayıda madalya aldıysa, aynı sırada olmalıdır.

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

PostgreSQL Özet İstatistikler ve Pencere Fonksiyonları

Kursa Göz Atın

Egzersiz talimatları

  • Her sporcuyu kazandığı madalya sayısına göre sırala — sayı arttıkça sıra yükselsin — aynı değerlerde aynı sıra numarasını ver.

Uygulamalı etkileşimli egzersiz

Bu egzersizi bu örnek kodu tamamlayarak deneyin.

WITH Athlete_Medals AS (
  SELECT
    Athlete,
    COUNT(*) AS Medals
  FROM Summer_Medals
  GROUP BY Athlete)

SELECT
  Athlete,
  Medals,
  -- Rank athletes by the medals they've won
  ___ OVER (ORDER BY ___ DESC) AS Rank_N
FROM Athlete_Medals
ORDER BY Medals DESC;
Kodu Düzenle ve Çalıştır