6. Hafta İLİŞKİSEL CEBİR 12/28/2009



Benzer belgeler
Veritabanı Yönetim Sistemleri

MÜHENDİSLİKTE VERİ TABANLARI. Prof. Dr. Nebiye Musaoğlu,Y.Doç.Dr. Şinasi Kaya İTÜ İnşaat Fakültesi Geomatik Mühendisliği Bölümü

BMB202. Veritabanı Yönetimi Ders 5. İlişkisel Cebir ve SQL. Erdinç Uzun NKÜ Çorlu Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü

BTP203 VERİTABANI YÖNETİM SİSTEMLERİ

SİSTEM ANALİZİ VE MÜHENDİSLİĞİ Yrd.Doç.Dr. B. Türker Özalp İLİŞKİSEL CEBİR

1. BÖLÜM Mantık BÖLÜM Sayılar BÖLÜM Rasyonel Sayılar BÖLÜM I. Dereceden Denklemler ve Eşitsizlikler

Veritabanı. SQL (Structured Query Language)

BÖLÜM- 5: BİRDEN FAZLA TABLODAN VERİ GETİRMEK

SAYILAR DOĞAL VE TAM SAYILAR

İÇİNDEKİLER. Mantık Kurallarının Elektrik Devrelerine Uygulanması... 14

VEKTÖR UZAYLARI 1.GİRİŞ

BMT 206 Ayrık Matematik. Yük. Müh. Köksal GÜNDOĞDU 1

Veri Tabanı Tasarım ve Yönetimi

İLİŞKİSEL VERİTABANI. İlişkisel veritabanlarının ortak özelliği verilerin tablolar aracılığı ile tutulmasıdır.

İÇİNDEKİLER BASİT EŞİTSİZLİKLER. HARFLİ İFADELER Harfli İfadeler ve Elemanları Eşitsizlik Sembolleri ve İşaretin Eşitsizlik İfadesi...

VTYS İlişkisel Veri Modeli Y R D. D O Ç. D R. M. B E T Ü L Y I L M A Z

Veritabanı Tasarımı. SQL Deyimi Anatomisi

Veritabanı ve Yönetim Sistemleri

Bu bölümde cebirsel yapıların temelini oluşturan Grup ve özelliklerini inceleyeceğiz.

Buna göre, eşitliği yazılabilir. sayılara rasyonel sayılar denir ve Q ile gösterilir. , -, 2 2 = 1. sayıdır. 2, 3, 5 birer irrasyonel sayıdır.

10.Konu Tam sayıların inşası

olsun. Bu halde g g1 g1 g e ve g g2 g2 g e eşitlikleri olur. b G için a b b a değişme özelliği sağlanıyorsa

1.GRUPLAR. c (Birleşme özelliği) sağlanır. 2) a G için a e e a a olacak şekilde e G. vardır. 3) a G için denir) vardır.

EBE-368 Veri Tabanı Yönetim Sistemleri İlişkisel Cebir ve İlişkisel Hesaplama

CEVAP ANAHTARI 1- D 2-C 3-B 4-D 5-D 6-A 7-D 8-D 9-A 10-B TEST D 2-D 3-D 4-A 5-C 6-B 7-B 8-B 9-C 10-D 1-D 2-A 3-D 4-B 5-B 6-C 7-D 8-D 9-A 10-B

Atatürk Anadolu. Temel Kavramlar Üzerine Kısa Çalışmalar

0.1 Küme Cebri. Teorem 1 A ve B iki küme olmak üzere i) (A B) c = A c B c ii) (A B) c = A c B c

Birden Çok Tabloda Sorgulama (Join)

ÜNİVERSİTEYE GİRİŞ SINAV SORULARI

İLİŞKİSEL VERİ MODELİ

Temel Kavramlar. (r) Sıfırdan farklı kompleks sayılar kümesi: C. (i) Rasyonel sayılar kümesi: Q = { a b

Veritabanı Tasarımı. Kartezyen Çarpım ve Join İşlemleri

SQL Kod ile Tablo Oluşturma

Aşağıdaki şemaya dikkat edin. Sorgulamalarımızı genellikle bu şemaya göre yapacağız.

Algoritma ve Akış Diyagramları

İÇİNDEKİLER ÖNSÖZ Bölüm 1 KÜMELER Bölüm 2 SAYILAR

EXCEL 2007 ELEKTRONİK ÇİZELGE

Fatih University- Faculty of Engineering- Electric and Electronic Dept.

SQL'e Giriş. SELECT Deyimi. SQL Komutları. Yardımcı Deyimler

KABA KÜME TEORİSİ (Rough Set Theory) Dr. Sedat TELÇEKEN

T I M U R K A R A Ç AY - H AY D A R E Ş C A L C U L U S S E Ç K I N YAY I N C I L I K A N K A R A

Lisans. Ayrık Matematik Yüklemler ve Kümeler. Konular. Tanım. Tanım çalışma evreni: U izin verilen seçenekler kümesi örnekler:

Veritabanı Yönetim Sistemleri İleri SQL

TEMEL SAYMA. Bill Gates

Oracle Database 11g: Introduction to SQL

SQL Query and Table Application

T I M U R K A R A Ç AY - H AY D A R E Ş C A L C U L U S S E Ç K I N YAY I N C I L I K A N K A R A

EBOB - EKOK EBOB VE EKOK UN BULUNMASI. 2. Yol: En Büyük Ortak Bölen (Ebob) En Küçük Ortak Kat (Ekok) 1. Yol:

PERMÜTASYON, KOMBİNASYON. Örnek: Örnek: Örnek:

Otomata Teorisi (BIL 2114)

VERİ TABANI YÖNETİM SİSTEMLERİ Melih BÖLÜKBAŞI

Sayı sistemleri-hesaplamalar. Sakarya Üniversitesi

6. SINIF ÖF RETH M PROGRAMI

1. GRUPLAR. c (Birleşme özelliği) sağlanır. 2) a G için a e e a a olacak şekilde e G (e ye birim eleman denir) vardır.

12-A. Sayılar - 1 TEST

Veri Tabanı Hafta Dersi

Çözümleyici Çizelgeler (Çürütme Ağaçları)

DERS 2 : BULANIK KÜMELER

Temel Matematik. 1. saat. Hadi başlayalımmm...

Tanım Bir A kümesinin her elemanı, bir B kümesinin de elamanı ise, A kümesine B kümesinin alt kümesi denir.

KÜMELER ÜNİTE 1. ÜNİTE 1. ÜNİTE 2. ÜNİTE 1. ÜNİT

Bu kısımda işlem adı verilen özel bir fonksiyon çeşidini ve işlemlerin önemli özelliklerini inceleyeceğiz.

Sql Komutlarından Select Sorgusu Ve Myadmin Üzerinden Anlatımı

T.C. KOCAELİ ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ BİLİŞİM SİSTEMLERİ MÜHENDİSLİĞİ

Veri Tabanı Yönetim Sistemleri Bölüm - 7

MATM 133 MATEMATİK LOJİK. Dr. Doç. Çarıyar Aşıralıyev

SINIF TEST. Üslü Sayılar A) 4 B) 5 C) 6 D) 7 A) - 5 B) - 4 C) 5 D) 7. sayısı aşağıdakilerden hangisine eşittir?

Algoritmalar ve Programlama. Algoritma

Mantıksal Operatörlerin Semantiği (Anlambilimi)

13.Konu Reel sayılar

Bulanık Küme Kavramı BULANIK KÜME. Sonlu ve Sonsuz Bulanık Kümeler. Sonlu ve Sonsuz Bulanık Kümeler

Lineer Dönüşümler ÜNİTE. Amaçlar. İçindekiler. Yazar Öğr. Grv.Dr. Nevin ORHUN

Değişken içeren ve değişkenlerin belli değerleri için doğru olan cebirsel eşitliklere denklem denir.

Rakam : Sayıları yazmaya yarayan sembollere rakam denir.

BÖLÜM13 3- EXCEL DE VERİ İŞLEMLERİ

SQL'e Giriş. SELECT Deyimi. SQL Komutları. 1. DDL (Data Definition Language - Veri Tanımlama Dili)

TABAN ARĠTMETĠĞĠ. ÇÖZÜM (324) 5 = = = = 89 bulunur. Doğru Seçenek C dir.

5. SINIF MATEMATİK YILLIK PLANI

KILAVUZ SORU ÇÖZÜMLERİ Matematik

TEOG. Sayma Sayıları ve Doğal Sayılar ÇÖZÜM ÖRNEK ÇÖZÜM ÖRNEK SAYI BASAMAKLARI VE SAYILARIN ÇÖZÜMLENMESİ 1. DOĞAL SAYILAR.

SAYI SİSTEMLERİ ve BOOLE CEBİRİ 1+1=1 ÖĞR.GÖR. GÜNAY TEMÜR - TEKNOLOJİ F. / BİLGİSAYAR MÜH.

Değişkenler. Geçerli değişken isimleri : baslamazamani, ad_soyad, x5 Geçersiz değişken isimleri : 3x, while

Mustafa Sezer PEHLİVAN. Yüksek İhtisas Üniversitesi Beslenme ve Diyetetik Bölümü

p sayısının pozitif bölenlerinin sayısı 14 olacak şekilde kaç p asal sayısı bulunur?

Nesne Yönelimli Programlama

127 - Twoing Algoritması ile Sınıflandırma Kalp Hastalığı Uygulaması MEHMET AKİF ERSOY ÜNİVERSİTESİ İLHAN UYSAL MEHMET BİLEN SAMİ ULUKUŞ

FORMÜLLER VE FONKSİYONLAR

MAT 302 SOYUT CEBİR II SORULAR. (b) = ise =

MATM 133 MATEMATİK LOJİK. Dr. Doç. Çarıyar Aşıralıyev

İleri Seviye Select Cümlecikleri

İÇİNDEKİLER ÖNERMELER BİLEŞİK ÖNERMELER AÇIK ÖNERMELER İSPAT YÖNTEMLERİ

BMT 206 Ayrık Matematik. Yük. Müh. Köksal GÜNDOĞDU 1

VERİ TABANI UYGULAMALARI

Dizey Cebirinin Gözden Geçirilmesi

TEMEL BİLGİSAYAR BİLİMLERİ. Programcılık, problem çözme ve algoritma oluşturma

Küme temel olarak belli nesnelerin ya da elamanların bir araya gelmesi ile oluşur

BİL 201 Geçit düzeyinde yalınlaştırma (Gate-Level Minimization) Hacettepe Üniversitesi Bilgisayar Müh. Bölümü

Olasılık, bir deneme sonrasında ilgilenilen olayın tüm olaylar içinde ortaya çıkma ya da gözlenme oranı olarak tanımlanabilir.

biçimindeki ifadelere iki değişkenli polinomlar denir. Bu polinomda aynı terimdeki değişkenlerin üsleri toplamından en büyük olanına polinomun dereces

Ders 2: Küme Teorisi, Örnek Uzay, Permütasyonlar ve Kombinasyonlar

Transkript:

İTÜ İnşaat Fakültesi Geomatik Mühendisliği Bölümü 6. Hafta İlişkisel Cebir ve İlişkisel Hesap: Seçme, İzdüşüm, Birleşim, Kesişim, Fark, Kartezyen Çarpım, Aktarma işlemi ve ara ilişkilerin adlandırılması İLİŞKİSEL CEBİR İlişkisel modelde temel yapı ilişkidir. Bu modelde kullanıcılar ilişkiler cinsinden düşünür, ilişkiler üzerinde işlem yapılır, sonuçlar da ilişki yapısında ele alınır. İlişkisel cebir, işlemsel bir sorgulama dilidir. Bir ya da iki ilişkiyi girdi olarak alıp sonuç olarak yeni bir ilişki üreten bir dizi işlemlerden oluşmaktadır. Temel işlemler, seçme, atma, kartezyen çarpımı, yeniden adlandırma, birleştirme, fark oluşturma şekillerindedir. Bu temel işlemlerden başka kesişme seti, doğal birleşim, bölme ve atama v.b. gibi çeşitli işlemler bulunmaktadır. Bu işlemler, temel işlemlere dayanılarak gerçekleştirilmektedir. 1

İlişkisel Diller İlişkisel Veri Tabanı Yönetim Sistemlerinde kullanılan diller (ilişkisel diller) kuramsal temelleri açısından ikiye ayrılır. İlişkisel Cebire (Relational Algebra) dayalı diller : İlişkiler üzerine cebirsel işlemler uygulanarak yeni ilişkiler elde edilir. Bir sorgunun yanıtını elde edebilmek için, belirli ilişkisel cebir işlemlerinin belirli sırada uygulanması gerekir. Cebirsel dillerde kullanıcı hangi işlemlerin hangi sırada uygulanacağını yazarak hem neyi istediğini hem de istediğinin nasıl elde edileceğini belirtir. İlişkisel Hesaba (Relational Calculus) dayalı diller : Bu dillerde sorgu, istenilen niteliklerin sağlaması gereken bir önerme oluşturarak tanımlanır. İlişkisel hesaba dayalı dillerde ise, kullanıcı istediği veriler tarafından sağlaması gereken önermeyi yazar, ancak bu verilerin nasıl elde edileceğine ilişkin bilgi vermez. İLİŞKİSEL İŞLEMLER E.F. Codd tarafından yapılan tanıma göre bir ilişkisel dilin yetkin olabilmesi için ilişkisel hesap deyimleri ile elde edilebilen her sonucun bu dil ile de elde edilebilmesi gerekir. İlişkisel cebir işlemlerinden ikisi (seçme ve izdüşüm) tekli, diğerleri ise ikili işlemlerdir. Diğer taraftan ikili işlemlerden dördü (birleşim, kesişim, küme fark ve kartezyen çarpımı) alışılmış küme işlemleridir, diğer ikili işlemler (birleştirme, doğal birleştirme ve bölme) ise özel işlemlerdir. İlişkisel cebir işlemlerinden tümü birbirinden bağımsız değildir. İlişkisel işlemlerden birkaçının diğer işlemler cinsinden ifade edilmesi mümkündür. 2

Seçme İşlemi Seçme ya da sınırlama işlemi bir ilişkinin belirli bir koşulu sağlayan çoklularını seçmeyi sağlar. İlişki bir çizelge olarak düşünülürse seçme işlemi ile çizelgenin belirli satırları seçilir. Genel yazılışı: σf (R) σ : İşlem (seçme) işareti F : Seçme koşulu R : Seçme işlemi uygulanacak ilişkinin adı Seçme koşulu yalın bir koşul olabileceği gibi karmaşık bir koşul da olabilir. Her yalın koşul bir karşılaştırma işareti ile karşılaştırılan iki aritmetik deyimden oluşur. Aritmetik deyimlerde de işaretteki nitelikler, değişmezler ve bunların fonksiyonları yer alabilir. Yalın koşullar mantıksal işaretlerle birleştirilerek karmaşık koşullar oluşturulur. Seçme işlemi R ilişkisi üzerinde yapılır. İşlemin sonucu R-in belirlenmiş koşulu (predicate) sağlayan satırlarından oluşan ilişkidir. EMP Tablosu Name Office Dept Rank Smith 400 CS Assistant Jones 220 Econ Adjunct Green 160 Econ Assistant Brown 420 CS Associate Smith 500 Fin Associate Dept = 'CS' (EMP) Name Office Dept Rank Smith 400 CS Assistant Brown 420 CS Associate Sorgu: Maaşı 1000 den Yüksek olan personeller hakkında ayrıntılı bilgi σ (staff) salary>10000 3

İzdüşüm İşlemi Tekli bir işlem olan izdüşüm işlemi bir ilişkinin belirli nitelikleri seçilerek diğerleri atılır. İlişki bir çizelge olarak düşünülürse izdüşüm işlemi ile çizelgenin belirli kolonları seçilir ve elde edilen yeni çizelgede varsa tekrarlı satırlar atılır. Belirli bir ilişkiden bazı özellikleri çıkarıp atmaktır. Genel yazılış: π(nitelik LİSTESİ) ( R ) π : İzdüşüm işareti nitelik listesi :izdüşüm alınacak niteliklerin listesi (istenilen sırada) R : İzdüşüm alınacak ilişkinin adı İzdüşüm sorgu: π personellerin numaraları, adları,soyadları ve maaşları (staff) sno, fname, lname, salary Birleşim İşlemi İkili bir işlem olan birleşim işlemi iki ilişkinin küme birleşimini alır. Rastgele iki ilişkinin birleşimi alınamaz. İki ilişkiye birleşim işleminin uygulanabilmesi için bu ilişkilerin birleşim-uyar ilişkiler olması gerekir. Eğer iki ilişkinin dereceleri (nitelik sayıları) aynı ise ve aynı sıradaki nitelikleri aynı değer alanı üzerinden tanımlanmışsa bu ilişkilere birleşim-uyar ilişkiler denir. İlişkilerin birleşim-uyar olması için karşılıklı niteliklerinin adlarının aynı olması şart değildir. Ancak karşılıklı niteliklerinin uyar (ikisi de tarih, ikisi de kişi adı, ikisi de miktar..gibi) olması gerekir. Genel yazılış: R1 R2 : Birleşim işareti R1 ve R2 : Birleşimi alınacak ilişkiler 4

Birleşme Sorgu: şube veya ev bulunan tüm mahallelerin listeleri (π (Branch ))U (π (Property_for_Rent)) area area Area Sidcup Dyce Partick Leigh Dee Kilburn Hynfland Sonuç ilişki Kesişim İşlemi İkili bir işlem olan kesişim işlemi ile iki ilişkinin küme kesişimi elde edilir. Birleşim işlemi gibi kesişim işlemi de rasgele iki ilişkiye uygulanamaz. İki ilişkiye kesişim işleminin uygulanabilmesi için bu ilişkilerin birleşim-uyar olması gerekir. İki ilişkide de bulunan sıraların saptanması için kesişme işlemi yapılır. Genel Yazılışı: R1 R2 : Kesişim işareti R1 ve R2 : Kesişimi alınacak ilişkiler Küme Fark İşlemi İki ilişkiden birinde bulunup, diğerinde bulunmayan sıraların bulunması, belirlenmesi işlemidir. Fark işlemi de rasgele iki ilişkiye uygulanamaz. İki ilişkiye fark işleminin uygulanabilmesi için bu ilişkilerin birleşim-uyar olması gerekir. Genel yazılışı: R1-R2 - : Küme Fark İşareti R1 ve R2 : Farkı alınacak ilişkiler 5

R Bill Smith 22 Sally Green 28 Mary Keen 23 Tony Jones 32 S Forrest Gump 36 Sally Green 28 DonJuan DeMarco 27 R S Bill Smith 22 Sally Green 28 Mary Keen 23 Tony Jones 32 Forrest Gump 36 DonJuan DeMarco 27 R - S Bill Smith 22 Mary Keen 23 Tony Jones 32 R S Sally Green 28 Fark Sorgu: Şubelerin bulunduğu, ama kiralık evlerin bulunmadığı kentler (π (Branch) ) - (π (Property_for_rent) ) city city City Bristol Sonuç ilişki Karteziyen Çarpım İşlemi Kartezyen çarpım işlemi ile iki ilişkinin küme çarpımı bulunur. Çarpma işlemi ile elde edilen ilişki, işlenen ilişkilerin çoklularının ardı ardına eklenmesinden oluşan tüm çoklukları içeren bir ilişkidir. Genel yazılışı: R1 x R2 = {a1a2: a1є R1, a2є R2} X: çarpma işareti R1, R2 : çarpılacak ilişkiler 6

R Bill Smith 22 Mary Keen 23 Tony Jones 32 S Dinner Dessert Steak Ice Cream Lobster Cheesecake R X S Dinner Dessert Bill Smith 22 Steak Ice Cream Bill Smith 22 Lobster Cheesecake Mary Keen 23 Steak Ice Cream Mary Keen 23 Lobster Cheesecake Tony Jones 32 Steak Ice Cream Tony Jones 32 Lobster Cheesecake Kartezyen Çarpım Sorgu : evlere bakmış tüm kiracıların adları ve açıklamaları (π (Renter) ) x (π (viewing) ) rno,fname,lname rno,pno,comment) Viewing Rno Pno Date Comment CR56 CR76 CR56 CR62 CR56 PA14 24-may-98 Too small PG4 20-apr-98 Too remote PG4 26-may-98 PA14 14-may-98 No dining room PG36 28-apr-98 Birleştirme İşlemi İkili bir işlem olan birleştirme işlemi ile iki ilişkinin kartezyen çarpımının bir alt kümesi elde edilir. Birleştirme işleminde işlenen ilişkilerden her birinin belirli bir niteliği (birleştirme niteliği) ile bir aritmetik karşılaştırma işareti (θ) kullanılır. Genel yazılış R1 R2 a1 θ a2 R1 ve R2 : birleştirilen ilişkiler : birleştirme işareti a1 ve a2 : sırasıyla R1 ve R2 nin birer niteliği θ : bir aritmetik karşılaştırma işareti R1 R2 = σa1θa2 (R1XR2) a1θa2 7

Doğal Birleştirme İşlemi Đkili bir işlem olan doğal birleştirme işleminin uygulanabilmesi için işlenen ilişkilerde aynı adı taşıyan bir yada birkaç(enaz bir) niteliğin bulunması gerekir. Doğal birleştirme işlemi ile iki ilişki aynı adı taşıyan niteliklerinin eşitliği üzerinden birleştirilir ve sonuç ilişkide tekrarlı niteliklerden birer tanesi atılır. R1 R2 R1 ve R2 : birleştirilen ilişkiler : Birleştirme işareti Sorgu: Evlere bakmış tüm kiracıların adları ve açıklamaları (π (renter) ) rno,fname,lname (π (Viewing) ) Rno, Pno,comment Bölme İşlemi Karmaşık bir işlemdir. Diğer ikili işlemlerden birleşim, kesişim ve doğal birleştirme işlemleri değişmeli iken, bölme işlemi ile küme fark işlemi değişmeli değildir. Genel yazılış R1 R2 R1 Bölünen ilişki R2 Bölen ilişki İki ilişkiye bölme işlemi uygulanabilmesi için ilişkilerde en az bir ortak (aynı adlı) nitelik bulunması gerekir. Bölme işlemi bu ortak nitelik yada nitelikler üzerinden uygulanır. Adı bölme olmakla birlikte ilişkisel bölme işleminin aritmetik bölme işlemi ile bir benzerliği yoktur. 8

Đlk kümede, ikinci kümeden tekrarlanan elemanları bulmak için kullanılır. T1 tablosu: Đsim Soyisim Yaş Melsek Şadi Evren ŞEKER 30 Bilgisayar Müh. Ali Baba 20 Tüccar Veli Demir 20 Öğrenci Cem Yıldız 20 Tüccar T2 tablosu: Yaş 20 T1 T2 Đsim Ali Veli Cem Soyisim Baba Demir Yıldız T3 Yaş Melsek 20 Tüccar T1 T3 Đsim Ali Cem Soyisim Baba Yıldız AKTARMA İŞLEMİ VE ARA İLİŞKİLERİN ADLANDIRILMASI Birçok ilişkisel işlem içeren uzun bir ilişkisel cebir deyimini doğru olarak yazmak ya da yazılmış bir deyimi anlamak kolay değildir. İşlem önceliklerinin belirtilebilmesi için deyimlerde çok sayıda parentez kullanmak gerekir. İlişkisel cebir işlemlerini anlaşılır hale getirmek ve birçok işlem içeren uzun deyimlerin parçalanarak yazılabilmesinde büyük yarar vardır. Bir ilişkisel işlemin uygulanması ile elde edilecek ilişkinin niteliklerinin adları, işlenen ilişki ya da ilişkilerdeki nitelik adları ile aynı olur. Ancak bu şekilde elde edilen bir ilişkide aynı adlı birden çok nitelik bulunursa, bunları birbirinden ayırt etmek için ilişki adları ile niteleme yapılabilir. İlişkisel işlemlerdeki karmaşıklıktan kurtulmak için aktarma işlemi yapılır. Bu işlem sayesinde hem uzun deyimler küçük parçalar halinde yazılarak düşünme ve anlama kolaylaşacak hem de ara ilişkilerin ve niteliklerinin adlandırılması ile aynı adı taşıyan niteliklerin ayırtedilebilmesi sağlanacaktır. Genel Yazılış: P[(yeni-nitelik-adları)] ilişkisel cebir deyimi P : ara ilişkinin adı yeni-nitelik-adları: ara ilişkinin niteliklerine verilen yeni adlar :aktarma işleci(işlem işareti) 9

10