JOIN İLİŞKİLENDİR
ÖRNEK: Personel ve bölüm adlı 2 tablo bulunmaktadır.
Çalışan her personel ve personelin yöneticisi ile ilişkili bilgiler nelerdir?
SELECT * SEÇ *
FROM personel,bölüm GELİŞ personel,bölüm
WHERE personel .böl_no=bölüm.bölüm_no ; OLAN personel.böl_no = bölüm.bölüm_no;
TABLO ADI KOLON ADI
ÖRNEK: JOIN (İLİŞKİLENDİR) işleminde arzu edilen(sicil,ad,soyad,böl_no,yön_s_g_n) alanların listele.
SELECT sicil,ad,soyad,böl_no,yön_s_g_n SEÇ sicil,ad,soyad,böl_no,yön_s_g_n
FROM personel,bölüm GELİŞ personel,bölüm
WHERE personel .böl_no = bölüm .bölüm_no; OLAN personel .böl_no = bölüm .bölüm_no;
SELF-JOIN: KENDİSİYLE -İLİŞKİLENDİR
TANIM:Bir tablonun kendisi ile birleştirilmesine “KENDİSİYLE-İLİŞKiLENDİR” denir.(SELF-JOIN)
SELECT A. sicil , A.ad , A.soyad,
B .ad , B.soyad , B.dog_tar SEÇ A. sicil , A.ad , A.soyad,
FROM personel A , personel B B .ad , B.soyad , B.dog_tar
WHERE A. yon_sos_g_n =B .sosy_g_no; GELİŞ personel A , personel B
OLAN A. yon_sos_g_n =B .sosy_g_no;
NESTED SELECTS:
İÇİÇE
TANIM:İç içe geçmiş SELECT(SEÇ)komutlarından oluşur.İçteki. seç komutunun bulduğu sonucu dış takı SEÇ komutumuz işlevini yerine getirmesi için kullanılır.
ÖRNEK:Parça numarası 24 olan parçayı ,projelerde kullanan çalışan personeli listele.
SELECT * SEÇ *
FROM personel GELİŞ personel
WHERE sosy_g_no OLAN sosy_g_no
IN(SELECT per_s_g_no İÇİNDE(SEÇ per_s_g_no
FROM parça,proje,çalışma GELİŞ parça,proje,çalışma
WHERE pr_no = proj_no AND OLAN pr_no = proj_no VE
proj_no =proj_no AND proj_no = proj_no VE
par_no =24); par_no =24);
ÖRNEK: Fatih’te oturan personelin çalıştığı projelerin adlarını ve yerlerini listele.
SELECT proj_ad,yer SEÇ proj_ad,yer
FROM proje GELİŞ proje
WHERE proj_no IN OLAN proj_no İÇİNDE
(SELECT proje_no (SEÇ proje_no
FROM personel,çalışma GELİŞ sosy_g_no = per_s_g_no
WHERE sosy_g_no = per_s_g_no OLAN sosy_g_no = per_s_g_no
AND adres LIKE “% fatih %”); VE adres BULUNAN “% fatih %);