Konular

Join İşlemleri

İlişkisel veritabanının en temelinde birden fazla tablo üstünde birlikte işlem yapabilmek yatar. Bu sayede verilerin tekrarlaması önlenmiş olur ve sonuçta veri yönetimi kolaylaşır.

 

Joinler için Tablolarımız

iller tablosu         hava_durumu tablosu
 Join İşlemleri    Join İşlemleri

 

Inner Join

Inner Join, sadece iki tabloda da var olan verileri esas alır; eğer bir tabloda karşılık yoksa, o kaydı hiç ekrana getirmez.

Inner Join ile tüm alanları karşılaştırıp bağlayabilirsiniz; ancak Memo ve OLE Object alanlarını birleştirmek isterseniz hata alırsınız. Bu alanlarla JOIN işlemi yapmayınız.

    Bir sorguda istediğiniz kadar Inner Join kullanabilirsiniz. Böylece sadece iki tabloyu değil; istediğiniz kadar tabloyu aynı anda birbirine bağlayabilirsiniz.

    Inner Join, sadece iki tabloda da var olan verileri alır. Yani eğer tblKisiler tablosundaki bir kişinin tblSiteler tablosunda hiç kaydı olmasaydı yukarıdaki sorguda o kişi hiç seçilmeyecekti ve sonuçta çıkmayacaktı.

SELECT iller.ilad, hava_durumu.durum
FROM iller, hava_durumu
WHERE iller.ilno = hava_durumu.ilno

veya 

SELECT iller.ilad, hava_durumu.durum
FROM iller INNER JOIN hava_durumu ON iller.ilno=hava_durumu.ilno

Join İşlemleri

Left Join

LEFT sözcüğünden önceki tablo soldaki tablo, sonraki tablo sağdaki tablodur.

Inner Join'e oldukça benzese de bu bağlama türünün bir farkı vardır. Inner Join, daha önce de dediğim gibi, sadece iki tabloda da var olan verileri esas alır; eğer bir tabloda karşılık yoksa, o kaydı hiç ekrana getirmez. Ancak LEFT veya RIGHT join 'de istediğiniz yandaki (Left veya Right) tüm veriler ekrana gelir.Tanımı biraz karışık gibi de olsa, birazdan örneklerle daha iyi anlayacaksınız.

Eğer bir sorgu da Left JOIN kullanırsanız,( tabloSOL.alan1 = tabloSAG.alan2  ), sol taraftaki tabloda bulunan (tabloSOL) tüm veriler, sağdaki tabloda olup olmadığına bakılmaksınız ekrana yazılacaktır. Karşılığı bulunanlarda gerekli veri ekranda yazacak olmayanlarda ise <NULL> yazacaktır. 

LEFT joinde soldaki tablodaki tüm değerler listelenirken sağdaki tablodaki değerlerden karşılığı olanlar yazılır, karşılığı olmayanlar yerine NULL yazılır.

SELECT iller.ilad, hava_durumu.durum
FROM iller LEFT JOIN hava_durumu ON iller.ilno=hava_durumu.ilno

Join İşlemleri

Right Join

Eğer bir sorgu da Right JOIN kullanırsanız,( tabloSOL.alan1 = tabloSAG.alan2  ), sağ taraftaki tabloda bulunan (tabloSAG) tüm veriler, soldaki tabloda olup olmadığına bakılmaksınız ekrana yazılacaktır. Karşılığı bulunanlarda gerekli veri ekranda yazacak olmayanlarda ise <NULL> yazacaktır.

RIGHT joinde sağdaki tablodaki tüm değerler listelenirken soldaki tablodaki değerlerden karşılığı olanlar yazılır, karşılığı olmayanlar yerine NULL yazılır.

 

SELECT iller.ilad, hava_durumu.durum
FROM iller RIGHT JOIN hava_durumu ON iller.ilno=hava_durumu.ilno 

Join İşlemleri

 

 

Join İşlemleri

Yorumunuzu Ekleyin
Join İşlemleri Yorumları +3 Yorum
  • MUHJAMMET
    1
    MUHJAMMET
    ÇOK T.EDERİM
    02 Haziran 2010 17:53:32, Çarşamba
  • Emrullah
    1
    Emrullah
    Rigth join ekran ciktisinda bir adet daha satir bulunmasi gerekiyor:
    NULL - Gunesli seklinde.
    13 Mart 2015 00:16:27, Cuma
  • cnytkc
    1
    cnytkc
    Merhaba php de yeniyim bende 2 tablo var ilk tablo üyeler tablosu ikincisi konular ben konularda konu yazar adında bir alan açtım şimdi bu konu yazar alanına üye id kullanarak ekleyen uyenin adını nasıl getirebilirim
    03 Ocak 2016 19:07:22, Pazar

Veritabanı Nedir?

Veritabanı basit olarak bilgi depolayan bir yazılımdır. Bir çok yazılım bilgi depolayabilir ama aradaki fark, veritabanın bu bilgiyi verimli ve hizli bir şekilde yönetip degiştirebilmesidir. Veritabanı, bilgi sisteminin kalbidir ve etkili kullanmakla değer kazanır. Bilgiye gerekli oldugu zaman ulaşabilmek esastır. Indeksi olmayan bir kütüphane ve bütün kitapların ayni kapağa sahip oldugunu düşündüğünüzde kütüphane kullanıcılarının ne kadar çok işi olacağını tahmin edersiniz. Bir veritabani bir kütüphanenin mükemmel bir indeks sistemi oldugu gibi, aynı zamanda kütüphanenin kendisidir. İlişkisel veritabanı yönetim sistemleri relational database management systems - rdbms büyük miktarlardaki verilerin güvenli bir şekilde tutulabildiği, bilgilere hızlı erişim imkanlarının saglandığı, bilgilerin bütünlük içerisinde tutulabildigi ve birden fazla kullanıcıya aynı anda bilgiye erişim imkanının sağlandığı programlardır. Oracle veritabani da bir ilişkisel veri tabanı yönetim sistemidir.

168,471 Okunma 5 Yorum 12/10/2009 18:59:51 14/05/2014 19:00:28

Sql Komutları

Sql komutlarından DISTINCT, IN, NOT IN, IN(SELECT...), ANY, ALL, EXISTS, NOT EXISTS, UNION, EXCEPT, BETWEEN kullanımı

107,787 Okunma 8 Yorum 05/05/2008 12:04:24 08/06/2013 12:05:39

Veritabanı Nedir?

Veritabanının nedir? bileşenleri nelerdir?

54,031 Okunma Henüz yorum yapılmamış 18/01/2010 08:27:01 11/01/2019 21:01:33

Insert, Delete, Update

Insert, insert ile başka tablodan kayıt almak, delete, update

36,521 Okunma 1 Yorum 26/05/2008 03:36:52

View Oluşturma

Sql komutlarından view oluşturma ve faydaları, myadminde gösterimi

35,141 Okunma 4 Yorum 28/04/2008 21:58:04

Sql Komutları

Dıstınct, ın, not ın, ınselect..., any, all, exısts, not exısts, unıon, except, between

28,253 Okunma Henüz yorum yapılmamış 05/05/2008 10:21:47

Sql Uygulaması

26,158 Okunma Henüz yorum yapılmamış 12/05/2008 11:28:43

Postgresqlin Özellikleri

Postgresql nedir?postgresqlin tarihçesi?postgresqlin özellikleri nelerdir?

25,429 Okunma 1 Yorum 19/10/2009 09:13:34

Joinler

Joinler, inner join, left join, right join

23,294 Okunma 1 Yorum 26/05/2008 11:41:45 20/02/2015 22:25:34

Yükleniyor...