CodeBlanks Logo Icon CodeBlanks

Anchor ve recursive

UNION ALL ile iki parçayı öğrenirsin.

Anchor ve recursive

Anchor başlangıç noktası, recursive kendini çağıran kısımdır.

-- anchor: SELECT 1
-- recursive: SELECT n + 1 FROM countdown WHERE n < 5

Örnekte: anchor temel, recursive adım.

Anchor ve recursive — ayrıntı

Anchor sabit bir sonuç verir. Recursive her adımda bir önceki sonuca dayanır. Sonuçlar UNION ALL ile birleşir.

Her turda yalnızca bir önceki turun ürettiği satırlar işlenir; yeni satır üretilmeyen ilk turda özyineleme kendiliğinden durur.

Uygulama Anchor ve recursive

Bir recursive CTE yaz: anchor SELECT 1, recursive SELECT n+1 ... WHERE n < 5.

Başlangıç kodu

query.sql
-- anchor ve recursive
WITH RECURSIVE countdown(n) AS (
  SELECT 1

Örnek çözüm

query.sql
WITH RECURSIVE countdown(n) AS (
  SELECT 1
  UNION ALL
  SELECT n + 1 FROM countdown WHERE n < 5
)
SELECT * FROM countdown;

Beklenen çıktı

n
1
2
3
4
5

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 UNION ALL ekle

Soru
  SELECT 1
  ____
  SELECT n + 1 FROM countdown WHERE n < 5
Cevap
  SELECT 1
  UNION ALL
  SELECT n + 1 FROM countdown WHERE n < 5

Açıklama: UNION ALL doğru cevap.

2 Anchor ne işe yarar?

  • Sonuç
  • Sıralama
  • Filtre
  • Başlangıç noktası Doğru cevap

Açıklama: Anchor başlangıç noktasıdır.

3 Anchor ve recursive: kavramları eşleştir

Kavram Anlamı
anchor temel
recursive özyineli
UNION ALL birleştir
adım döngü

İleri seviye bölümündeki tüm dersler