9 Ocak 2017 Pazartesi

İlişkisel Cebir



İlişkisel cebir, bir ilişkisel sorgulama dilidir. Bu ifadeler yardımı ile birçok sorgulama işlemi kodlama aşamasına geçmeden önce tanımlanabilmektedir.

Örneğin, belirli kayıtların seçilmesi, belirli sütunların sorgulama sonucunda elde edilmesi gibi daha birçok işlem ilişkisel cebir ifadeleri kullanılarak kolayca ortaya konabilmektedir.

İlişkisel cebir, bir veya iki ilişkiyi girdi olarak alıp, sonuçta yeni bir ilişki üreten  bir dizi işlemden oluşmaktadır. Ayrıca ilişkisel cebir bir veritabanı sorgulama dilidir.

İlişkisel cebir bir sorgulama dilidir fakat bu sorgulamalar sadece biçimsel olarak yapılmaktadır.

Yani sorgulama işleminin yapılması için bir yorumlayıcı yada derleyiciye ihtiyaç yoktur. Bu bakımdan ele alındığında SQL’ den farklıdır.

Burada yazılan cebir ifadeleri daha sonraki aşamada bir sorgu dili ile (örneğin SQL) komutlara dönüştürülmektedir.

Bir ilişkisel veritabanında kullanılan temel ilişkisel cebir ifadeleri şunlardır. 

Seçme (select) işlemi 
Projeksiyon / Atma (project) işlemi 
Kartezyen çarpım (cartesian product) işlemi 
Birleştirme (join) işlemi 
Kesiştirme (intersect) işlemi 
Fark (difference) işlemi 

Seçme İşlemi

Belirli bir ilişkiden bazı kayıtların seçilerek ortaya konulması işlemidir.    işareti ile gösterilmektedir. Seçme işlemi şu şeklide tanımlanmaktadır.







Seçim işleminde karşılaştırma işleçleri olan =, >, <, ?, ?, ? ifadeleri de kullanılmaktadır. Ayrıca mantıksal operatörler olan “ve” için ^, “veya” için v işaretleri de kullanılmaktadır.


Örnek: Müşteri tablosu aşağıda verilmiştir. Bu tabloyu kullanarak ilçesi “Maltepe” olan müşterileri listeleyiniz.


Belirli bir ilişkiden sadece bazı sütunları atmak için yapılan bir işlemdir. Bu işlem      sembolü ile gösterilmektedir. Atma işlemi aşağıdaki şekilde tanımlanmaktadır.


Yine burada da mantıksal operatörler ve karşılaştırma işlemleri kullanılabilmektedir.
Pi sembolü, projeksiyon/atma işlemini ifade eder.







Karşılaştırma işleçleri olan =, >, <, ?, ?, ? ifadeleri de kullanılmaktadır. Ayrıca mantıksal operatörler olan “ve” için ^, “veya” için v işaretleri de kullanılmaktadır.


Kartezyen Çarpım İşlemi

Belirli bir ilişkiden mümkün olabilecek tüm ilişki çiftlerinin elde edilmesi ve tek bir ilişki biçiminde gösterilmesi için kartezyen çarpım kullanılmaktadır. Kartezyen çarpım X sembolü ile gösterilmektedir. Kartezyen çarpımın genel kullanım biçimi şöyledir.




Örnek: Aşağıda verilen Öğrenci ve Dersler tablolarını göz önüne alarak Bilgisayar bölümünde okuyan ve tüm dersleri alan öğrencileri listeleyen ilişkisel cebir ifadesi nedir?








Sonuç olarak elde edilecek olan kartezyen çarpım tablosu aşağıdaki gibi olacaktır.

Birleştirme İşlemi

Kurulan iki ilişkiden birinde veya her ikisinde birden bulunan kayıtların seçilmesi için yapılan bir işlem türüdür. Bu işlem U simgesi ile gösterilmektedir.


Örnek: Aşağıda verilen Kredi ve Mevduat tablolarını göz önüne alarak, bankanın Maltepe şubesinde mevduat ve/veya kredi hesabı bulunan müşterilerin isimlerini listeleyiniz?







Bu sorgu neticesinde elde edilen sonuç aşağıdaki gibi olacaktır.



Kesişme İşlemi




Belirlenen iki ilişkiden birinde bulanan kayıtların belirlenmesi için kullanılan bir işlemdir. Bu işlem ? simgesi ile gösterilmektedir. Genel gösterimi aşağıdaki gibidir.


Örnek: Aşağıda verilen Kredi ve Mevduat tablolarını göz önüne alarak, bankanın Maltepe şubesinde hem mevduat hem de kredi hesabı bulunan müşterilerin isimlerini listeleyiniz?










Bu sorgu neticesinde elde edilen sonuç aşağıdaki gibi olacaktır.

Fark İşlemi

Verilen iki ilişkide birinde bulunup diğerinde bulunmayan kayıtların gösterilmesi için kullanılan bir işlemdir. ( - ) işareti ile gösterilmektedir.










Örnek: Aşağıda verilen Kredi ve Mevduat tablolarını göz önüne alarak, bankanın Konak şubesinde mevduat hesabı olup kredi hesabı olmayan müşterilerin isimlerini listeleyiniz?



Bu sorgu neticesinde elde edilen sonuç aşağıdaki gibi olacaktır.