CodeBlanks Logo Icon CodeBlanks

FULL OUTER JOIN

Her iki tablodaki tüm satırları getirmeyi öğrenirsin.

FULL OUTER JOIN

FULL OUTER JOIN her iki tablonun tüm satırlarını tutar. Eşleşmeyenler NULL ile gelir.

SELECT c.name, o.id
FROM customers c
FULL OUTER JOIN orders o ON o.customer_id = c.id;

Bu sorgu eşleşen ve eşleşmeyen herkesi listeler.

customers c kaynağından c.name, o.id seçilir. orders o tablosu o.customer_id = c.id koşuluyla iki tablonun tüm satırları korunarak birleştirilir.

FULL OUTER JOIN — ayrıntı

FULL OUTER JOIN LEFT ve RIGHT JOIN'in birleşimidir. MySQL'de doğrudan yok; UNION ile üretilir.

Örneğin müşteriler ile siparişler FULL OUTER JOIN edilirse hem siparişsiz müşteriler hem de müşterisi bulunmayan siparişler sonuçta yer alır.

Uygulama FULL OUTER JOIN

customers ile orders tablosunu FULL OUTER JOIN ile birleştir.

Başlangıç kodu

query.sql
-- tam birleştir
SELECT c.name, o.id
FROM customers c

Örnek çözüm

query.sql
SELECT c.name, o.id
FROM customers c
FULL OUTER JOIN orders o ON o.customer_id = c.id;

Beklenen çıktı

name    id
Ayşe    1
NULL    5

Soru ve cevaplar

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

1 FULL OUTER JOIN neyi tutar?

  • Yalnız eşleşenler
  • Yalnız sol
  • Yalnız sağ
  • Her iki tablonun tümü Doğru cevap

Açıklama: FULL OUTER JOIN her iki tablonun tüm satırlarını tutar.

2 FULL OUTER JOIN ekle

Soru
SELECT c.name, o.id
FROM customers c
____ orders o ON o.customer_id = c.id;
Cevap
SELECT c.name, o.id
FROM customers c
FULL OUTER JOIN orders o ON o.customer_id = c.id;

Açıklama: FULL OUTER JOIN doğru cevap.

3 FULL OUTER JOIN: kavramları eşleştir

Kavram Anlamı
FULL OUTER her iki
LEFT tüm sol
RIGHT tüm sağ
INNER kesişim

Orta seviye bölümündeki tüm dersler