- Inner Join
- Left Join
- Right Join
- Full Join
Kitaplar Tablosu :
Yazarlar Yablosu :
1.Inner Join : Sql dilinin temel komutlarından Inner Join ile birden fazla tabloda birebir eşleşen kayıtları getirmemizi sağlar.Inner Join kullanmak sitemizin hızını arttırdığı gibi sayfa içerisinde kod kalabalığınıda minimum seviyeye indirmiş olacağız.
Sonuç :
Yaptığımız şey çok basit, “SELECT * FROM” derken yıldız yerine bize
geri dönülmesini istediğimiz alanları yazıyoruz, bunu yazarken kuralımız
ise; “tabloismi.alanismi” önce tablo ismini yazıyoruz sonra nokta,
sonra alanismi. Biz burada iki tane alan belirledik. Ardından birinci
tablomuzu yazıyoruz, sonra “INNER JOIN yazarlar” diyoruz. (hangi tablo
ismini önce yazdığımız, inner join kullanırken farketmiyor.) Ardından
iki tablonun birleşme şartını belirtiyoruz: “ON yazarlar.id =
kitaplar.id” Sonuç olarak bize kitap isimleri ve yazarının yaşı
geri dönmüş oluyor.
2.Left Join : Left join önce solda bulunan tablonun tamamını alır ve daha sonra sağda bulunan tabloda eşleşenleri gösterir, yoksa NULL değerini döndürür.
Aşağıdaki sorguda kitaplar tablosunda ki kitap ismi ile yazarlar tablosunda ki yazar ismini left join ile bize veren sorgudur.
Sonuç :
Aslında kodun yaptığı iş, bir önceki inner join’in yaptığı iş ile
neredeyse aynı, ancak left join, soldaki tablonun tamamını alır. Bu sql
cümlesinde “kitaplar LEFT JOIN yazarlar” kitaplar soldaki tablo ve bu
tablonun tamamı sonuç tablosunda yer alır. Şu anki sql cümlemizde bu bir
sakınca yaratmadı ancak yazarı olmayan bir kitap olsaydı, yazar
sütununda “null” yazacaktı. Bir sonraki örnekte bu daha rahat
görülebilir.
Aşağıdaki sorguda kitaplar tablosunda ki kitap ismi ile yazarlar tablosunda ki yazar ismini right join ile bize veren sorgudur.
Sonuç :
4.Full Join : Full join Left Join ve Right Join birlikte kullanılarak yada sadece join olarak sorgu yazdığımızda iki tablonun birleşimini bize verir.
Sonuç olarak :
İlişkili veritabanlarında “join” cümleleri çok işe yarar, ve genellikle
“inner join” pek çok kez kullanılır. Left join ile right join
birbirlerine benzerler, sadece biri soldaki, diğer sağdaki tablonun
tamamını alır ve yukarıdaki örnekte olduğu gibi, eğer ilgili yazarın her
hangi bir kitabı yoksa, geri döndürdüğü değerlerde “null” kelimesine
rastlanabilir.
Hiç yorum yok:
Yorum Gönder