SQL RIGHT Join Nedir? Kullanımı

Yazıda SQL right join nedir ile SQL right join anlatılmış, MySQL, SQL Server, Oracle vb. sistemlerde SQL right join kullanımı ile ilgili bilgi verilmiştir.

RIGHT JOIN nedir?

SQL right join SQL Join türlerinden biridir.

SQL right join ikinci (sağ) tablodaki tüm satırları ve koşul ile belirtilen ilk (sol) tablodaki satırları seçmek/birleştirmek için kullanılır.

İkinci (sağ) tablodaki değer ile ilk (sol) tablodaki eşleşmeyen değer olursa ilk (sol) tablodaki değerler NULL değerini alır.

Özetle; SQL RIGHT JOIN ifadesi, ikinci seçilen tablodaki tüm satırları ve ilk seçilen tablodaki eşleşen satırları birleştirmek için kullanılır.

SQL RIGHT JOIN kullanımı

SQL RIGHT JOIN ifadesinin kullanımı aşağıdaki gibidir.

SELECT tablo_adi.sutun_adi, ...
  FROM tablo_A
  RIGHT JOIN tablo_B ON tablo_A.sutun_adi = tablo_B.sutun_adi;

SQL JOIN kullanımında tablolara takma ad vermek sıklıkla yapılan bir işlemdir.

SELECT tablo_adi.sutun_adi, ...
  FROM tablo_A AS t1
  RIGHT JOIN tablo_B AS t2 ON t1.sutun_adi = t2.sutun_adi;

Aşağıdaki örnekleri kullanarak tabloları birleştirelim.

kategoriler tablosunda bulunan veriler:

kat_idkat_adi
1Bilgisayar
2Telefon
3Elektronik

urunler tablosunda bulunan veriler:

urun_idurun_adiurun_fiyatkat_id
1Masaüstü Bilgisayar17991
2Akıllı Telefon7992
3Dizüstü Bilgisayar21991
4SQL Kitabı5999

Örneklerde bulunan kategoriler tablosu kat_id ile urunler tablosundaki kat_id adlarına ve değerlerine dikkat edin.

Tüm ürünleri ve eşleşen kategorileri listeleyelim.

SELECT * FROM kategoriler RIGHT JOIN urunler ON kategoriler.kat_id = urunler.kat_id;

Komut çalıştırıldığında iki tabloda bulunan veriler birbiriyle birleştirilecektir.

kat_idkat_adiurun_idurun_adiurun_fiyatkat_id
1Bilgisayar1Masaüstü Bilgisayar17991
1Bilgisayar3Dizüstü Bilgisayar21991
2Telefon2Akıllı Telefon7992
(NULL)(NULL)4SQL Kitabı5999

Sorgu sonucu incelendiğinde urunler tablosunda bulunan tüm satırlar ve kategoriler tablosundaki eşleşen satırlar listelenmiştir.

Hayırlı günler dilerim.

Yusuf SEZER

Yusuf SEZER

Computer Engineer who interested about web technologies, algorithms, artificial intelligence and embedded systems; constantly exploring new technologies.


Bunlara'da bakmalısın!