Menu
Coddy logo textTech

Tekrar - Kendine JOIN

Coddy'nin SQL Journey'sinin Temeller bölümünün bir parçası. Ders 47 / 72.

challenge icon

Görev

Zor

Kullanılabilir tablolar ve sütunlar:

  • friends: id, name, friend_id

friends tablosundaki her kişi için sahip oldukları tüm arkadaşın arkadaşı bağlantılarını bulun. Bir arkadaşın arkadaşı bağlantısı, A kişisinin B kişisiyle arkadaş olması ve B kişisinin de C kişisiyle arkadaş olması durumunda oluşur. Bu bağlantıları üç sütun olarak listeleyin:

  • friend1: başlangıç kişisi
  • friend2: doğrudan arkadaşı
  • friend3: arkadaşının arkadaşı

Kurallar:

  • friend3'ün friend1 ile aynı kişi olduğu durumları dahil etmeyin
  • Sonuçları friend1'in adına göre azalan sırada sıralayın

Örnek: Alice, Bob ile ve Bob da Carol ile arkadaşsa Alice-Bob-Carol geçerli bir arkadaşın arkadaşı bağlantısı olur.

REQUIRED OUTPUT FORMAT: <translation> [Your translated content here] </translation>

Kendin dene

-- Tabloyu kendisine iki kez birleştir ki bir satır üç kişilik bir zincir tutsun
SELECT ____ AS friend1, ____ AS friend2, ____ AS friend3
FROM friends f1
JOIN friends f2 ON ____
JOIN friends f3 ON ____
-- Başladıkları kişiye geri dönen zincirleri at
WHERE ____
ORDER BY ____ DESC;

Temeller bölümündeki tüm dersler

Kendi başına pratik yap: SQL playground