1 / 33

İlişkisel Diller

İlişkisel Diller. İlişkisel Cebir İlişkisel Hesaplama. İlişkisel Cebir. Temel işlemler Seçme İzdüşümü Kartezyen çarpı Birleştirme Fark Türeme işlemler Bitiştirme Kesişme Bölme. Örneklerde kullanılacak ilişkiler.

jera
Download Presentation

İlişkisel Diller

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

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

  3. Örneklerde kullanılacak ilişkiler

  4. Örneklerde kullanılacak ilişkiler(devamı) Viewing

  5. Seçme (selection) (R)koşulSeçme işlemitek 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 nTek 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 (cartesianproduct) 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ımSorgu : evlere bakmış tüm kiracıların adları ve açıklamaları( (Renter) ) x ( (viewing) ) rno,fname,lname rno,pno,comment)

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

  12. Birleşme (union) RUS 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şmeSorgu: şube veya ev bulunan tüm mahallelerin listeleri ( (Branch ))U ( (Property_for_Rent)) area area

  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. FarkSorgu: Şubelerin bulunduğu, ama kiralık evlerin bulunmadığı kentler ( (Branch) ) - ( (Property_for_rent) )citycity

  16. Bitiştirme İşlemleri • Theta-Join (-Join) • Equi-Join • Natural Join • Outer Join • left outer join • right outer join • full outer 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. F R.aiΘS.bi biçimindedir. Θ karşılaştırma işlemidir R S =  (RxS)F F

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

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

  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_rentproperty_for_rent. pno,street,city,rno,date,comment Viewing) Sonuç ilişki Viewing 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 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 S F 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) Staff.bno=branch.bno and branch.area=’Partic

  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 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) )citycity

  30. Bölme R÷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) ) ( (σ(Property_for_rent) ) pno rooms=3 rno,pno Sonuç Rno CR56 Pno PG4 PG36

  32. İlişkisel Cebir İşlemleri

  33. İlişkisel Cebir İşlemleri

More Related