–left ve right join
–tablo 1 inner join tablo 2 yazarız normalde
–tablo 1 left inner join tablo 2 yazarsak
–asıl tablo tablo1,eşleşen tablo tablo 2 olur
–right da ise sonraki tablo neyse o baz alınır
select * from ogrenciler
select * from dersler
select * from notlar
–adi,soyadi,dersadi,aldığı notu veren sql cümlesi
select O.ADi,O.Soyadi,D.DersAdi,N.Notu
from Ogrenciler O inner join Notlar N
on O.OgrID = N.OgrID
inner join Dersler D
on D.DersID = N.DersID
order by N.Notu desc
–örneğin right join ile yapılışı
select O.ADi + ‘ ‘ + O.Soyadi as ‘Ad Soyad’, D.DersAdi,N.Notu
from Notlar N right join Ogrenciler O
on O.OgrID = N.OgrID
left join Dersler D
on D.DersID = N.DersID
order by N.Notu desc
–örneğin left join ile yapılışı
select O.ADi + ‘ ‘ + O.Soyadi as ‘Ad Soyad’, D.DersAdi,N.Notu
from Notlar N left join Ogrenciler O
on O.OgrID = N.OgrID
right join Dersler D
on D.DersID = N.DersID
order by N.Notu desc
select * from Ogretmenler
select O.Adi,O.Soyadi,D.DersAdi,D.DersID
from Ogretmenler O inner join Dersler D
on O.DersID = D.DersID
–örneğin left joinle yapılışı
select O.Adi,O.Soyadi,D.DersAdi,D.DersID
from Ogretmenler O left join Dersler D
on O.DersID = D.DersID
–örneğin right joinle yapılışı(boşta olan öğretmenleri gördük)
select O.Adi,O.Soyadi,D.DersAdi,D.DersID
from Ogretmenler O right join Dersler D
on O.DersID = D.DersID
–soru1
–ogrno,ogradi+soyadi,dersadi,hocası,notu
–yalnız bu sql cümlesini yazarken
–sınava girmemişlerinde görünülmesi istiyoruz
select O.OgrID,O.Adi + ‘ ‘ + O.Soyadi as ‘Ad Soyad’,D.DersAdi
,OG.Adi + ‘ ‘ + OG.Soyadi as ‘ Ad Soyad’ ,N.Notu
from ogrenciler O left join Notlar N
on O.OgrID=N.OgrID
left join Dersler D
on D.DersID=N.DersID
left join Ogretmenler OG
on OG.DersID=D.DersID
–soru2
–ogrno,ogradi+soyadi,dersadi,hocası,notu
–yalnız bu sql cümlesini yazarken
–sınavı gerçekleştirilmemiş derslerde gelecek
sql left right join kullanımı örnekleri
Hiç yorum yok:
Yorum Gönder