Join kelimesini ele alalım ilk olarak. Katılmak , birleştirmek, eklemek , bağlamak anlamlarını taşır.
SQL join komutlarını kullanarak iki tabloda ortak alanlardan faydalanarak bu iki tabloyu eşlemeye yarar. Örneğin;
Bir spor klübüne ait bir veri tabanı olsun. Bu veritabanında üyelere ve bu üyelerin adreslerin tutulduğu ikinci bir tablo olsun. Bu tablolarda tutulan alanlar için de örnek vererek açıklayalım;
tablo-1: üyeler olsun ve column( sütun) isimleri de; üye id, ad, soyad, doğum tarihi, üyelik tarihi …vs
“üyeler” tablosu
üye_id
ad
soy_adi
dogum_tarihi
üyelik_tarihi
1
tolga
çelik
25.10.2000
01.01.2016
.
.
2
ahmet
genç
01.05.1999
21.09.2016
.
.
3
ayşe
fidan
12.05.1988
15.08.2016
.
.
tablo-2: adresler olsun, sütunları ise; adres id, ülke, şehir, ilçe, semt, sokak, posta kodu.
“adres” Tablosu
seq
üye_id
şehir
ilçe
sokak
posta_kodu
1
1
İstanbul
Şişli
bahar sokak
34011
2
1
Ankara
Keçiören
Çetiner sokak
06001
3
2
Istanbul
Beylikdüzü
test
test
4
3
Istanbul
Kadıköy
test
5
3
Ankara
Kızılay
test
test
Bu iki tablonun ortak noktaları olan “üye_id” sütun değerini kullanarak üye tablosundaki bir üyenin, adresinin hangisi veya hangileri olduğunu JOIN leyere bulabiliriz. Bu arada sütunlardaki isimleri değişebilir . üye_id olmaz da, kisi_id olur vs.) ama iki tablodada ortak olan sütunun hangisi olduğunu biliyorsak, o sütun üzerinden iki tabloyu eşleyerek veriyi çekebiliriz.
Teknik olarak biraz detaylı örnek verecek olursam;
SQL join , INNER JOIN de denmektedir.Farklı türleri vardı ama şuan girmiyorum. üyeler ve adresler üzerindeki “üye_id” alanlarını birbirine eşit olduğu noktadan bağlayalım;
SELECT * FROMüyeler INNER JOINadresler ON üyeler.üye_id = adresler.üye_id;
** JOIN yapmak için farklı olarak “WHERE” de kullanıldığı görülmektedir.
SELECT * FROM üyeler , adresler WHERE üyeler.üye_id = adresler.üye_id;
Join kelimesini ele alalım ilk olarak. Katılmak , birleştirmek, eklemek , bağlamak anlamlarını taşır.
SQL join komutlarını kullanarak iki tabloda ortak alanlardan faydalanarak bu iki tabloyu eşlemeye yarar. Örneğin;
Bir spor klübüne ait bir veri tabanı olsun. Bu veritabanında üyelere ve bu üyelerin adreslerin tutulduğu ikinci bir tablo olsun. Bu tablolarda tutulan alanlar için de örnek vererek açıklayalım;
tablo-1: üyeler olsun ve column( sütun) isimleri de; üye id, ad, soyad, doğum tarihi, üyelik tarihi …vs
“üyeler” tablosu
tablo-2: adresler olsun, sütunları ise; adres id, ülke, şehir, ilçe, semt, sokak, posta kodu.
“adres” Tablosu
posta_kodu
Bu iki tablonun ortak noktaları olan “üye_id” sütun değerini kullanarak üye tablosundaki bir üyenin, adresinin hangisi veya hangileri olduğunu JOIN leyere bulabiliriz. Bu arada sütunlardaki isimleri değişebilir . üye_id olmaz da, kisi_id olur vs.) ama iki tablodada ortak olan sütunun hangisi olduğunu biliyorsak, o sütun üzerinden iki tabloyu eşleyerek veriyi çekebiliriz.
Teknik olarak biraz detaylı örnek verecek olursam;
SQL join , INNER JOIN de denmektedir.Farklı türleri vardı ama şuan girmiyorum. üyeler ve adresler üzerindeki “üye_id” alanlarını birbirine eşit olduğu noktadan bağlayalım;
SELECT * FROM üyeler INNER JOIN adresler ON üyeler.üye_id = adresler.üye_id;
** JOIN yapmak için farklı olarak “WHERE” de kullanıldığı görülmektedir.
SELECT * FROM üyeler , adresler WHERE üyeler.üye_id = adresler.üye_id;