Merhaba
SQL konusunda biraz bilgim var fakat subquery konusunu tam anlamiyla cozemedim. Subquery'nin kullanilabildigi yerler ve yaptigi isi bana orneklerle aciklayabilirmisiniz? Kullandigim database onemli degil, standart SQL sozcuklerini icermesi yeterli.
Tesekkurler..
Iyi calismalar...
Subquery hakkinda birkac sey..
sub query bir select cumlesi kisaca icinde bir baska bagimsiz select cumlesinin kullanilmasidir...
Mesela
gibi bir cumle ile senaryomuz geregi ceza almis persoenllerin numaralarini listeleyebiliriz...
ise butun personel listesini biye verir.
biz eger ceza alan personellerin 3, 6, 11 numarali personeller oldugunu biliyorsak ceza alan personellerin butun bilgilerini listelemek icin soyle bir sql cumlesi yazabiliriz
veya
simdi tabi kodumuz dinamik degil.. yani ceza alanlarin numaralarini bildigimiy icin el ile yazdik ama yarin bu yumle calistiginda yeni ceza almis 17 numarali personel listede olmayacak... iste bu noktada sub query imdadimiza yetisiyor...
ilk yazdigimiz sql cumlesi zaten bize ceza alan personelin listesini veriyordu. o cumleyi bu culenin icine monte edelim...
bir subquery gordugumuzde oraya o query nin sonucunu koyarak ana query nin daha basit ve anlasilmasini saglayabiliriz. Ya da yazdigimiz bir sql cumlesinde ihtiyac duydugumuz bir veriyi olusturan bir query var ise onu oraya bir subquery olarak koyabiliriz....
Mesela
Kod: Tümünü seç
Select PERSONEL_NO
from CEZALI_PERSONEL_LISTESI
Kod: Tümünü seç
Select *
from PERSONEL
biz eger ceza alan personellerin 3, 6, 11 numarali personeller oldugunu biliyorsak ceza alan personellerin butun bilgilerini listelemek icin soyle bir sql cumlesi yazabiliriz
Kod: Tümünü seç
Select *
from PERSONEL
where PERSONEL_NO=3 or PERSONEL_NO=6 or PERSONEL_NO=11
Kod: Tümünü seç
Select *
from PERSONEL
where PERSONEL_NO in (3,6,11)
ilk yazdigimiz sql cumlesi zaten bize ceza alan personelin listesini veriyordu. o cumleyi bu culenin icine monte edelim...
Kod: Tümünü seç
Select *
from PERSONEL
where PERSONEL_NO in (Select PERSONEL_NO from CEZALI_PERSONEL_LISTESI)
* http://www.fahrettin.org Manzara Fotoğraflarım... 
* http://delphiturkiye.gunduz.info Seminerler...
* http://www.hakmar.com.tr Kalite bir haktır...

* http://delphiturkiye.gunduz.info Seminerler...

* http://www.hakmar.com.tr Kalite bir haktır...

bunlara paralel delphiturkiye olarak duzenledigimiz veritabani seminerleri izlemenizi hararetle tavsiye ederim....
* http://www.fahrettin.org Manzara Fotoğraflarım... 
* http://delphiturkiye.gunduz.info Seminerler...
* http://www.hakmar.com.tr Kalite bir haktır...

* http://delphiturkiye.gunduz.info Seminerler...

* http://www.hakmar.com.tr Kalite bir haktır...
