Cevaplar
-
left join ve right join hemen aynıdırlar. tabloyu saga yada sola alir.. eger sorguladıgınız bazı kosul saglıorsa bos verileride getirir.. // Örnek Group ile birlikte kullanıyorsa ve group olan alanlar bos veri varsa ciktisini verir. inerde tam tersi diye hatırlıyorum
inner join bunlara göre cok farklı. kosul saglanmayan kayıtları getirmez. en saglıklısı ınner joindir.
konuya bır kac ornek vermek gerekirse
select * from Tablo1 T1 inner join Tablo2 T2 on T1=T2
burada daha detaylı anlatım var : http://www.zihni.net/mysql/inner-join-ve-outer-join-arasindaki-farklar/ -
Join matematikteki kümeler gibidir.
Left join sol kümeyi ve sağ küme ile kesişenleri getirir.
Right join sağ küme ve sol ile kesişenler getirir.
Inner join ise sağ ve sol kümeden sadece kesişenleri getirir.
FROM table1,table2 ise her iki kümeyide seçer.
Daha detaylı anlamak için aşağıdaki grafiği inceleyebilirsin.
Bu grafik bana bu işleri kavramam için çok yardımcı olmuştu.
http://dervisali.files.wordpress.com/2012/01/sqljoins.png