yadigarykk merhaba, ilişkiler ve join kavramlarına bakmanız gerekiyor
2 Tane tablomuz var "Dersler" ve "Ogrenciler", Dersler tablosu soldaki Ogrenciler ise sağdaki tabloyu temsil etsin
Left join
SELECT [stunlar] FROM [sol tablo] LEFT JOIN [sag tablo] ON [...]
Left join yaparken LEFT JOIN
keywordu ve ON
clause ile hangi sutunlari nasil iliskilendirilecegi belirtiliyor
SELECT Dersler.ID as #, Dersler.Ders as Ders, Ogrencıler.Ogrenci as ogrenci
FROM Dersler LEFT JOIN Ogrenciler
ON Dersler.OgrId = Ogrenciler.Id
eğer bu iki tabloyu left join ile birleştirirsek, soldaki tablonun tamamı ve sağdaki ile eşleşenleri içeren yeni bir sanal tablomuz olacak
Tarih içeren 2 tane satır var çünkü sağdaki tabloda tarih ile eşleşen 2 tane öğrenci var. Fizik için eşleşme olmamasına rağmen sonucumuzda var bunun sebebi "LEFT JOIN" uyguladığımızda sol tablonun tamamının alınması.
Fuat sağ tabloda bulunduğundan ve her hangi bir ders ile eşleşmediğinden sonuca dahil değil
Right join
right joinde ise sağdaki tablonun tamamı ve soldaki tablodaki eşleşmeler sonuca katılır
SELECT [stunlar] FROM [sol tablo] RIGHT JOIN [sag tablo] ON [...]
ornek sorgu;
SELECT Dersler.ID as #, Dersler.Ders as Ders, Ogrencıler.Ogrenci as ogrenci
FROM Dersler RIGHT JOIN Ogrenciler
ON Dersler.OgrId = Ogrenciler.Id
Left joinin tersi olarak düşünebilirsiniz. Dikkat ettiyseniz fuat sonuca katılmış ama fizik sonuca dahil değil
Full Join (union)
Full Joinde ise hem sol hemde sağ taraf çıktıya dahil edilir
SELECT [stunlar] FROM [sol tablo] FULL JOIN [sag tablo] ON [...]
ornek sorgu;
SELECT Dersler.ID as #, Dersler.Ders as Ders, Ogrencıler.Ogrenci as ogrenci
FROM Dersler FULL JOIN Ogrenciler
ON Dersler.OgrId = Ogrenciler.Id
Görülüğü gibi hem Fuat hemde Fizik sonuca dahil
Inner Join
Inner joinde ise sadece sol ve sağ tablonun keşişimi sonuca dahil edilir. Yani eşleşmeyen satırlar sonuçtan çıkarılır
SELECT [stunlar] FROM [sol tablo] INNER JOIN [sag tablo] ON [...]
ornek sorgu;
SELECT Dersler.ID as #, Dersler.Ders as Ders, Ogrencıler.Ogrenci as ogrenci
FROM Dersler INNER JOIN Ogrenciler
ON Dersler.OgrId = Ogrenciler.Id
Görülüğü gibi hem Fizik hemde Fuat sonuca dahil değil.