FULL JOIN veya FULL OUTER JOIN Bağlantısı
SQL'de FULL JOIN, FULL OUTER JOIN olarak ta adlandırılır. Tam Dış Birleştirme olarak bilinir.
Açıklama
FULL OUTER JOIN:
Tablo-A ve Tablo-B de bulunan kayıtlardan bir eşleşme olduğunda tüm kayıtları döndürür. Eşleşme çok olduğunda sonuç kümeside doğru orantılı olarak artacaktır.
NOT: Microsoft Access aslında FULL OUTER JOIN ya da FULL JOIN Bağlantısını desteklemez. Yani SQL cümlesi olaraka desteklemez. Bu birleştirmeyi Access'te yapabilmek için UNION cümlesinden yararlanabiliriz. Siz Access SQL'de Söz diziminde FULL JOIN ya da FULL OUTER JOIN kelimelerini kullandığınızda Access hata verecektir. Onun için Bir LEFT JOIN ve birde RIGHT JOIN oluşturduktan sonra bu iki birleşimide UNION ile birleştirmeliyiz.
Söz Dizimi
FULL OUTER JOIN (Tam Dış Birleştirme)
SELECT kolon1....,kolonN FROM Tablo-A FULL OUTER JOIN Tablo-B ON Tablo-A.KolonAdı = Tablo-B.KolonAdı WHERE koşullar; |
PARAMETRELER
- kolon1...kolonN:sorguda gösterilecek alanlar
- Tablo-A:Soldan birleştirilecek tablo
- Tablo-B: Sağdan birleştirilecek tablo
- FULL OUTER JOIN:Bağlantı Türü
- ON'dan sonraki ifade:Eşleştirilecek alanlar
- WHERE :Koşullar
Yukarıdaki söz dizimi FULL OUTER JOIN'i destekleyen dillerde kullanılır. Ben bilginiz olması açısından sözdizimini verdim. Şimdi de Microsoft Access'te Tam Dış Birleştimenin söz dizimini veriyorum.
SELECT kolon1....,kolonN FROM Tablo-A LEFT JOIN Tablo-B ON Tablo-A.KolonAdı = Tablo-B.KolonAdı UNION SELECT kolon1....,kolonN FROM Tablo-A RIGHT JOIN Tablo-B ON Tablo-A.KolonAdı= Tablo-B.KolonAdı; |
PARAMETRELER
- kolon1...kolonN:sorguda gösterilecek alanlar
- Tablo-A:Soldan birleştirilecek tablo
- Tablo-B: Sağdan birleştirilecek tablo
- LEFT JOIN:Bağlantı Türü
- ON'dan sonraki ifade:Eşleştirilecek alanlar
- UNION: 2 tabloyu birleştirecek deyim
- kolon1...kolonN:sorguda gösterilecek alanlar
- Tablo-A:Soldan birleştirilecek tablo
- Tablo-B: Sağdan birleştirilecek tablo
- RIGHT JOIN:Bağlantı Türü
- ON'dan sonraki ifade:Eşleştirilecek alanlar
Şimdi örneklerimizi yapalım.
Örnekler
Öncelikle birleştireceğimiz tablonun Sol Birleştirme LEFT JOIN kısmını tanımlayalım.
Şimdi ise 2. işlem olarak birleştireceğimiz tablonun Sağ Birleştirme RIGHT JOIN kısmını tanımlayalım.
Gelelim3.İşleme Burada sadece 2 tabloyu birleştiren deyimi kullanmamız gerekiyor. 1.SQL cümlesinin sonuna 2.SQL cümlesinin ise başına UNION ifadesini ekliyoruz. Bu birleştirme türü sorgu tasarım penceresinde görünmez. Onun için SQL penceresi görüntüsünü paylaşıyorum.
Ayrıca sorguyu metin olarak veriyorum.
SELECT [Stok Hareketleri].[Hareket Türü], [Stok Hareketleri].[Ürün No], [Stok Hareketleri].Miktar
FROM Ürünler LEFT JOIN [Stok Hareketleri] ON Ürünler.[No] = [Stok Hareketleri].[Ürün No]
UNION
SELECT [Stok Hareketleri].[Hareket Türü], [Stok Hareketleri].[Ürün No], [Stok Hareketleri].Miktar
FROM Ürünler RIGHT JOIN [Stok Hareketleri] ON Ürünler.[No] = [Stok Hareketleri].[Ürün No];
Şimdi de sorgu sonuçlarımızı görmek için çalıştıralım.
Bu makalemizle birleştirme JOIN türlerini bitirmiş bulunmaktayız. İlerleyen zamanlarda SQL konusuna devam edeceğiz.
Şimdilik
Hoşcakalın...
0 Yorumlar