Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

İlişkisel Diller İlişkisel Cebir İlişkisel Hesaplama.

Benzer bir sunumlar


... konulu sunumlar: "İlişkisel Diller İlişkisel Cebir İlişkisel Hesaplama."— Sunum transkripti:

1 İlişkisel Diller İlişkisel Cebir İlişkisel Hesaplama

2 İlişkisel Cebir Temel işlemler Seçme Seçme İzdüşümü İzdüşümü Kartezyen çarpı Kartezyen çarpı Birleştirme Birleştirme Fark Fark Türeme işlemler Bitiştirme Bitiştirme Kesişme Kesişme Bölme Bölme

3 Örneklerde kullanılacak ilişkiler

4 Örneklerde kullanılacak ilişkiler(devamı) RnoPnoDateCommentCR56PA14 24-may- 98 Too small CR76PG420-apr-98 Too remote CR56PG4 26-may- 98 CR62PA14 14-may- 98 No dining room CR56PG3628-apr-98 Viewing

5 Seçme (selection)  (R) koşul Seçme işlemi tek R ilişkisi üzerinde yapılıyor. İşlemin sonucu R-in yalnız belirlenmiş koşulu (predicate) sağlayan satırlarından oluşan ilişkidir.

6  (staff) salary>10000 Sorgu: Maaşı 1000’den Yüksek olan personeller hakkında ayrıntılı bilgi

7 İzdüşümü (projection)  (R) süt1,süt2,…,süt n Tek bir R ilişkisi üzerinde yapılıyor. İşlemin sonucu R’ in belirlenmiş özellik değerlerinden oluşan ve tekrarlamalar bulunmayan dikey altkümesidir

8 İzdüşümü sorgu: personellerin numaraları, adları,soyadları ve maaşları  (staff) sno, fname, lname, salary

9 Kartezyen Çarpım (cartesian product) R X S İşlemin sonucu R’in her bir satırını S’in her bir satırı ile birleştirmekle alınan ilişkidir

10 Kartezyen Çarpım Sorgu : evlere bakmış tüm kiracıların adları ve açıklamaları (  (Renter) ) x (  (viewing) ) rno,fname,lname rno,pno,comment) RnoPnoDateCommentCR56PA1424-may-98 Too small CR76PG420-apr-98 Too remote CR56PG426-may-98 CR62PA1414-may-98 No dining room CR56PG3628-apr-98

11 Kartezyen çarpım fazlalık içermektedir (  (Renter) ) x (  (viewing) ) rno,fname,lname rno,pno,comment) (  (Renter) ) x (  (viewing) ) rno,fname,lname rno,pno,comment)  renter.rno=viewing.rno

12 Birleşme (union) R U S Satırlar sayısı uygun olarak I ve J olan iki R ve S ilişkisinin birleşme işleminin sonucu, tekrar satırların yer almadığı, en fazla (I+J)satırdan oluşan ve bu iki ilişkinin yatay birleşmesi ile alınan ilişkidir. R ve S birleşebilir olmalıdır

13 Birleşme Sorgu: şube veya ev bulunan tüm mahallelerin listeleri (  (Branch ))U (  (Property_for_Rent)) area area Area SidcupDycePartickLeighDeeKilburnHynfland

14 Fark (set difference) R-S R ve S ilişkileri arasındaki fark işleminin sonucu, R ilişkisinde varolan, ama S’de olmayan satırlardan oluşan ilişkidir. R ve S birleşebilir olmalıdır

15 Fark Sorgu: Şubelerin bulunduğu, ama kiralık evlerin bulunmadığı kentler (  (Branch) ) - (  (Property_for_rent) ) city city City Bristol

16 Bitiştirme İşlemleri Theta-Join (  -Join) Theta-Join (  -Join) Equi-Join Equi-Join Natural Join Natural Join Outer Join Outer Join left outer join left outer join right outer join right outer join full outer join full outer join Semi-Join Semi-Join

17 Theta –Join İşlemi R S F Theta-Join işleminin sonucu, R ve S ilişkisinin kartezyen çarpımından alınan ve F koşulunu sağlayan satırlardan oluşan ilişkidir. Theta-Join işleminin sonucu, R ve S ilişkisinin kartezyen çarpımından alınan ve F koşulunu sağlayan satırlardan oluşan ilişkidir. F R.aiΘS.bi biçimindedir. Θ karşılaştırma işlemidir R S =  (RxS) F F

18 (  (Viewing) ) (  (Viewing) ) rno,pno,comment rno,pno,comment Renter.rno=viewing.rno Sorgu: evlere bakmış tüm kiracıların adları ve açıklamaları (  (renter) ) rno,fname,lname Equi-Join işlemi Bitiştirme işlemi “eşitlik” koşuluna göre gerçekleştiriliyor;

19 Naturel_Join Sorgu: Evlere bakmış tüm kiracıların adları ve açıklamaları (  (renter) ) rno,fname,lname (  (Viewing) ) (  (Viewing) ) Rno, Pno,comment Equi-join işlemi + izdüşümü işlemi Ortak özelliklerden yalnız birisi sonuç ilişkide bulunuyor

20 Sol Bitiştirme (Left Outer Join) R S R ve S ilişkilerinin (sol) dış katılım işlemi sonucunda R’in, S ilişkisi ile ortak özelliklerinin değerlerinin eşit olmadığı satırları de sonuç ilişkide bulunuyor

21 Sol bitiştirme Sorgu: Evlere bakış sonuçları üzere rapor hazırlamalı (tüm kiralık evlerin listesini vermeli ve hangi evlere kimler tarafından bakıldığını ve görüşleri bildirmeli)  ( property_for_rent. pno,street,city,rno,date,comment  ( property_for_rent property_for_rent. pno,street,city,rno,date,comment Viewing)RnoPnoDateCommentCR56PA1424-may-98 Too small CR76PG420-apr-98 Too remote CR56PG426-may-98 CR62PA1414-may-98 No dining room CR56PG3628-apr-98 Viewing Sonuç ilişki Sol ilişkinin tüm satırları sonuç ilişkide yer almaktadır.

22 Sağ ve tam bitiştirme R ve S ilişkilerinin sağ bitiştirilmesi sonucu alınan ilişkide S’in eşleşme yapılmamış satırları da bulunuyor. R’in uygun satırlarındaki özellikler null değerler alıyor. R ve S ilişkilerinin sağ bitiştirilmesi sonucu alınan ilişkide S’in eşleşme yapılmamış satırları da bulunuyor. R’in uygun satırlarındaki özellikler null değerler alıyor. R ve S ilişkilerinin tam bitiştirilmesi sonucu alınan ilişkide R’in ve S’in eşleşme yapılmamış satırları da bulunuyor. Uygun satırların özellikleri null değerler alıyor R ve S ilişkilerinin tam bitiştirilmesi sonucu alınan ilişkide R’in ve S’in eşleşme yapılmamış satırları da bulunuyor. Uygun satırların özellikleri null değerler alıyor

23 Sağ bitiştirme (örnek) Sorgu1: Tüm kiralık evlerin listesini ve bunlardan hangilerinin ve kimler tarafından kiralandıklarını göstermeli (sağ bitiştirmeye örnek) Sorgu2: Tüm kiralık evlerin ve ev kiralamak isteyenlerin listesini, hangi evlerin ve kimler tarafından kiralandıklarını, kimlerin henüz ev kiralamadıklarını göstermeli (tam bitiştirmeye örnek) Kiralık_ev_arayanlar kiralık_evler Sağ bitiştirme-Sonuç ilişki Tam bitiştirme-sonucu

24 Sol ve sağ bitiştirme örnekleri

25 Tam bitiştirme örneği

26 Yarım -bitiştirme R F S Bu işlemin sonucunda alınan ilişki, R ilişkisinin S’le bitişmesinde iştirak eden satırlarını içeriyor

27 Yarım-bitiştirme Sorgu: Partick şubesinde çalışan personellerin tüm bilgileri (Staff branch.area=’Partic Branch) Staff.bno=branch.bno and

28 Kesişme R  S Kesişme işleminin sonucunda alınan ilişki, aynı zamanda hem R, hem de S ilişkisinde bulunan satırlardan oluşur. R ve S birleşebilien olmalıdır. Kesişme işlemini fark işlemi ile ifade etmek mümkündür  S = R-(R-S) R  S = R-(R-S)

29 Kesişme işlemi -örnek Sorgu: hem emlak şubelerinin, hem de kiralık evlerin bulunduğu kentler (  (Branch) )  (  (Property_for_rent) ) city city cityLondon Aberden Glasgow

30 Bölme R÷SR÷SR÷SR÷S Bölme işleminin sonucu, R ilişkisinin C özellikleri üzere tanımlanmış öyle satırlar kümesidir ki, bu satırlara S’in her bir satırı uygundur T1=Π c (R ) T2=Πc ((SxT1)-R) T=T1-T2

31 Bölme İşlemi Sorgu: Üç odalı tüm evlere bakmış tüm kiracılar (  (Viewing) )÷ (  (σ (Property_for_rent) ) rno,pno pno rooms=3 (  (Viewing) ) rno,pno RnoPno CR56 CR76 CR56 CR62CR56PA14PG4PG4PA14PG36 (  (σ (Property_for_rent) ) pno rooms=3 Pno PG4 PG36 Sonuç Rno CR56

32 İlişkisel Cebir İşlemleri

33


"İlişkisel Diller İlişkisel Cebir İlişkisel Hesaplama." indir ppt

Benzer bir sunumlar


Google Reklamları