
Bu yazımda SQL Join yapısından bahsedeceğim.
Join yapısını 4 farklı şekilde ayırabiliriz; INNER JOIN, LEFT JOIN, RIGHT JOİN ve FULL JOIN. Burada Inner join yerine sadece Join de kullabiliriz.
Tabloları birleştirmemizi sağlarlar. Bu birleştirmeleri ihtiyaca göre kendimiz düzenleriz. Örnek üzerinden gidecek olursak;
INNER JOIN


Yukarıda inner join ile Seyirci_tablosu ve Bilet_tablosu tablolarını birleştirdik ve bunu Bilet_id ile yapacağımızı belirttik. Bilet_id Bilet_tablosu’nun primary keyi Seyirci_tablosu’nun ise foreign keyidir. Eğer iki tabloyu birleştirmek istiyorsak ve ortak bir sütun yoksa bu mümkün değildir.
LEFT JOIN


Left join ile aynı şekilde tablomuzu birleştiririz. burada LEFT JOIN ile INNER JOIN gibi ortak olanları alırız ancak farklı olarak LEFT JOIN’in solundaki tabloda olanların tamamını da tabloya ekler. Yani kısacası soldaki tablonun tamamını ve bu tablonun sağdaki tablo ile olan kesişimini alır. En üstteki tabloda da bu gösterilmiştir.
RIGHT JOIN


Right join ile ise yukarıda Left join ile yaptığımızın aynısını sağ taraf için yapıyoruz. RIGHT JOIN ile INNER JOIN gibi ortak olanları alırız ve RIGHT JOIN’in sağındaki tabloda olanların tamamını da tabloya ekler. LEFT JOIN’de de olduğu gibi bu defa iki tablonun ortak olanlarını ve RIGHT JOIN’in sağındaki tablonun tamamını alır.
FULL JOIN


FULL JOIN ile yukarıda yaptığımız Left ve Right Join yapılarının birlikte olduğu bir tablo oluşturuyoruz gibi düşünebiliriz. Burada hem sağdaki tablonun tamamını hem de soldaki tablonun tamamını alır. Bunu sık kullanmasak ta genel mantığını bilmemiz yeterlidir.