SQL Join, bir veya daha fazla tabloyu birleştirerek ilişkilendirmenize olanak tanır. Bu, verilerinizi daha anlamlı ve kullanışlı bir şekilde sorgulamanıza ve analiz etmenize yardımcı olur. SQL Join, genellikle ilişkisel veritabanlarındaki tablolar arasındaki bağlantıları oluşturmak için kullanılır.
SQL Join Türleri
- INNER JOIN: INNER JOIN, belirli bir koşulu karşılayan kayıtları birleştirir. Bu koşul, JOIN ifadesi içinde belirtilir ve eşleşen kayıtlar yalnızca sonuç kümesine dahil edilir. Eşleşmeyen kayıtlar sonuç kümesine dahil edilmez.
- LEFT JOIN (veya LEFT OUTER JOIN): LEFT JOIN, sol tabloyu (ilk belirtilen tablo) tamamen ve sağ tabloyu (ikinci belirtilen tablo) belirli bir koşulu karşılayan kayıtlarla birleştirir. Eşleşmeyen sol tablo kayıtları da sonuç kümesine dahil edilir.
- RIGHT JOIN (veya RIGHT OUTER JOIN): RIGHT JOIN, RIGHT JOIN ifadesi içinde belirtilen koşulu karşılayan sağ tablo kayıtları ile sol tabloyu birleştirir. Eşleşmeyen sağ tablo kayıtları da sonuç kümesine dahil edilir.
- FULL OUTER JOIN (veya FULL JOIN): FULL OUTER JOIN, sol ve sağ tablolardaki tüm kayıtları birleştirir. Eşleşen kayıtlar ve eşleşmeyen kayıtlar sonuç kümesine dahil edilir.
- SELF JOIN: SELF JOIN, aynı tabloyu farklı alias’larla kullanarak tablo içindeki ilişkileri analiz etmek için kullanılır. Bu, özellikle hiyerarşik verileri sorgularken veya kendini referans alan tablolarda çalışırken faydalıdır.
SQL Join Kullanımı
SQL Join kullanırken genellikle aşağıdaki yapıyı kullanırsınız:
SELECT sütunlar FROM tablo1 INNER/LEFT/RIGHT/FULL OUTER JOIN tablo2 ON tablo1.sütun = tablo2.sütun;
Bu sorgu, belirtilen tablolar arasında belirtilen koşula göre birleştirme yapar ve sonucu döndürür.
Örnek:
Örnek bir sorgu kullanarak INNER JOIN’i gösterelim. Aşağıdaki sorgu, “siparişler” ve “müşteriler” tablolarını müşteri kimliklerine göre birleştirir ve müşteri adını ve sipariş tarihini döndürür:
SELECT müşteriler.ad, siparişler.tarih FROM müşteriler INNER JOIN siparişler ON müşteriler.id = siparişler.müşteri_id;
Bu sorgu, müşteri adı ve sipariş tarihi gibi verileri eşleştiren sonuçları döndürür.
SQL Join, karmaşık sorgulamalar ve çoklu tablo ilişkileri oluşturmak için güçlü bir araçtır. Farklı Join türlerini ve koşullarını anlayarak, veritabanınızdaki verileri daha etkili bir şekilde sorgulayabilirsiniz.