RA-Relational Algebra

Slides:



Advertisements
Benzer bir sunumlar
SQL Structured Query Language
Advertisements

Alakalı müşterileri hedefleyin. Google ile Yeniden Pazarlama Remarketing with Google. Target customers who are already showing interest in your business.
    SiMETRi SiMETRi.
The Relational Algebra and Relational Calculus
Veritabanı Yönetim Sistemleri Hızlı ve Kısa Giriş
Kavramlar İlişki (Relation)
Üniversitemiz Öğrenci Bilgi Sistemine Kullanıcı Adı (Öğrenci Numarası ) ve tarafınızdan belirlenen Şifre ile giriş yapılır; You can have access to Student.
Atama ve eşleme (eşleştirme) problemleri (Matching and Assignment problems)
The Relational Algebra and Relational Calculus
NOUN CLAUSES (İSİM CÜMLECİKLERİ).
COMPANY Veritabanı Örneği (Gereksinimler)
Chapter 2: Relational Model Tablosal (İlişkisel) Model
Birthday party. birthday party new year's party new year's party New Year's Party.
SERVING WATER TO A THIRSTY PERSON Bu Proje AB Tarafından Finanse edilmektedir. This Project is funded by European Union. Responsibility for the information.
BM-305 Mikrodenetleyiciler Güz 2015 (6. Sunu) (Yrd. Doç. Dr. Deniz Dal)
Database for APED Büşra Bilgili | Emirhan Aydoğan | Meryem Şentürk | M. Arda Aydın COMPE 341.
S ÜLEYMAN Ş AH ÜN İ VERS İ TES İ DERS KAYIT İŞ LEMLER İ / COURSE REGISTRATION PROCESS.
21/02/2016 A Place In My Heart Nana Mouskouri « Istanbul « (A Different Adaptation)
There was a man who was thinking of building an honourable structure that could last for milleniums and show the king’s power. So, he racked his brain.
Veri Tabanı Yönetimi Dersi 4. Laboratuvarı Arş. Gör. Pınar CİHAN.
EurobankTekfen SQL Server DBA Turgay Sahtiyan.
ÖTÖ 451 Okul Yönetiminde Bilgisayar Uygulamaları R. Orçun Madran.
MUSIC FOR COMENIUS BROTHER HOOD NEVER ENDS BROTHERHOOD NEVER ENDS…. *We are not going to give up yet *It's time for us to make our move *We fed up with.
Determination of uncertainties in energy and exergy analysis of a power plant Prof. Dr. H. Mehmet Şahin Gazi Üniversitesi Enerji Sistemleri Mühendisliği.
ÖTÖ 451 Okul Yönetiminde Bilgisayar Uygulamaları R. Orçun Madran.
Practice your writing skills
Veri Tabanı Yönetimi Dersi 1. Laboratuvarı Arş. Gör. Pınar CİHAN.
BUGRAHAN PRESENT. Eagle is a common name for many large birds of prey of the family Accipitridae; it belongs to several groups of genera that are not.
DISCUSSION
CHILD PORNOGRAPHY IŞIK ÜNİVERSİTESİ
Students social life and join the social clubs. BARIŞ KILIÇ - EGE DÖVENCİ IŞIK ÜNİVERSİTESİ
SAYILARIN SİHİRLİ DÜNYASI
Elektrik Mühendisliğinde Matematiksel Yöntemler
İSTATİSTİK II Hipotez Testleri 1.
Veri Tabanı Yönetimi Dersi 7. Laboratuvarı
© Marmara Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi
Elektrik Mühendisliğinde Matematiksel Yöntemler
İSTATİSTİK II Hipotez Testleri - 2.
VERİ TABANI DERS NOTLARI
Varlık-İlişki Modeli Örneği
DOĞAL SAYILAR TAM SAYILAR
Bölüm # 2 VERİ TABANI DERS NOTLARI Veri Tabanı Tasarımı
Derinlik öncelikli arama (Depth-first Search(DFS))
MAT – 101 Temel Matematik Mustafa Sezer PEHLİVAN *
Ac POWER ANALYSIS Part III..
Chapter 9 – Income statements and balance sheet
5. HAFTA Öğr. Gör. Yunus KÖKVER
tomorrow soon next week / year in five minutes/ in two hours later today I'll go to the market tomorrow. Don’t worry. He will be here soon. There.
Birthday party. birthday party new year's party new year's party New Year's Party.
MAKİNA TEORİSİ II STATİK KUVVET ANALİZİ Prof.Dr. Fatih M. Botsalı.
Bölüm # 2 VERİ TABANI DERS NOTLARI Veri Tabanı Tasarımı
Döngüler ve Shift Register
NİŞANTAŞI ÜNİVERSİTESİ
Algoritmalar II Ders 15 En Küçük Örten Ağaçlar.
NİŞANTAŞI ÜNİVERSİTESİ
Bilgisayar Bilimi Koşullu Durumlar.
SQL (STRUCTURED QUERY LANGUAGE)
Stored Procedure Öğr.Gör.Metin Akbulut.
“Differentiation for making a positive Difference!!!!”
NİŞANTAŞI ÜNİVERSİTESİ
SQL Server - Views.
Copyright © 2016 Ramez Elmasri and Shamkant B. Navathe.
Imagine that you are a teacher and you are taking your 20 students to England for the summer school.
PREPARED BY: 9-B STUDENTS. Sumerians, who laid the foundations of great civilizations and the world cultural heritage, emerged to the st The Sumerians.
DÜZLEMSEL MEKANİZMALARIN
DATE TIME YEAR MONTH DAY SEASON.
Algoritmalar II Ders 15 En Küçük Örten Ağaçlar.
VERİTABANI YÖNETİM SİSTEMLERİ 6-SQL Server-3-DDL
SUBJECT NAME Prepeared by Write the names of group members here
SQL VIEW.
Sunum transkripti:

RA-Relational Algebra

Sorgu Dilleri (Query Languages) Veritabanından bilgi almak için kullanılan dil. Dillerin katagorileri Yordamsal (Procedural) Yordamsal olmayan (Non-procedural), veya bildirimsel (declarative) Pür Diller (“Pure” languages): İlişkisel Cebir (Relational algebra) Relational calculus(ilişkisel hesap) Tuple relational calculus Domain relational calculus

RA:relational algebra has a similiar power with SQL. RA has NO formal syntax while SQL is industry standard language. RA is task oriented query language(procedural) while SQL is result-oriented (declarative). DBMS translate SQL to RA in order to execute it. RA query can be expressed as a query tree that contains nodes for tables and operators within the query. query tree shows execution order and is used in execution&optimization.

İlişkisel Cebir (Relational Algebra) Altı temel operatör Seçim (select):  İzdüşüm (project):  Küme Kesişim(∩) ve Küme Birleşim (union):  Fark (set difference): – Kartezyen Çarpım (Cartesian product): x Değiştirme (rename):  Operatörler tek yada iki ilişkiyi girdi olarak alıp sonuç olarak yeni bir ilişki üretir.

operators Single-table operators: 2-table operators Select Project Union, intersection, set difference division* product join* semijoin* antijoin* outerjoin*

Seçim İşlemi (Select Operation) – Örnek R ilişkisi A B C D     1 5 12 23 7 3 10 A=B ^ D > 5 (r) A B C D     1 23 7 10

Seçim İşlemi (Select Operation) Notasyon:  p(r) p secim kriteri (selection predicate) Tanım: p(r) = {t | t  r and p(t)} p burada propositional calculustaki bir formüldür ve  (and),  (or),  (not) terimlerini bağlanmış şekilde içermektedir. Her terim <attribute> op <attribute> veya <constant> ki op: =, , >, . <.  olmaktadır.

İzdüşüm yada Atma İşlemi (Project Operation) – Örnek B C r ilişkisi:   10 20 30 40 1 2 A,C (r) A C A C   1 2   1 2 =

İzdüşüm-Atma işlemi (Project Operation) Notasyon: A1, A2 öznitelik adları ve r ilişki adı. Sonuç listelenmemiş olan kolonların silinmesinden sonra ortaya çıkan k kolonlu ilişkidir. Çoklu satırlar sonuçtan silinir, ilişkiler küme olduğundan.

Birleşim İşlemi (Union Operation) – Örnek r, s ilişkileri: A B A B   1 2   2 3 s r A B   1 2 3 r  s:

Birleşim İşlemi (Union Operation) Notasyon: r  s Tanım: r  s = {t | t  r or t  s} r  s nun geçerli olması için. 1. r, s aynı sayıda özniteliğe sahip olmalıdır (arity) 2. öznitelik alanları uyumlu (compatible) olmalıdır (örnek: r’nin 2. kolonu snin 2. kolonu ile aynı tip değerlere sahip olması)

Küme Kesişim İşlemi (Set-Intersection Operation) Notasyon: r  s Tanım: r  s = { t | t  r and t  s } Varsayım: r ve s aynı arity’e sahip r ve s öznitellikleri uyumlu Not: r  s = r – (r – s)

Küme Kesişimi İşlemi– Örnek r, s ilişkisi: r  s A B A B   1 2   2 3 r s A B  2

Fark İşlemi (Set Difference Operation) – Örnek r, s ilişkisi: A B A B   1 2   2 3 s r r – s: A B   1

Fark İşlemi (Set Difference Operation) Notasyon r – s tanım: r – s = {t | t  r and t  s} Fark İşlemi uyumlu (compatible) ilişkiler içersinde yapılır. r ve s aynı arity ye sahip olmalı r ve s nin öznitelik alanları uyumlu olmalı.

Kartezyen Çarpım İşlemi (Cartesian-Product Operation) – Örnek r, s işlemi: A B C D E   1 2    10 20 a b r s r x s: A B C D E   1 2    10 20 a b

Kartezyen Çarpım İşlemi (Cartesian-Product Operation) Notasyon r x s Tanım: r x s = {t q | t  r and q  s} r(R) ve s(S) nin öznitellikleri ayrık (disjoint) olduğu kabul edilir. (R  S = ). Eğer r(R) ve s(S) nin öznitellikleri ayrık değil ise o zaman değiştirme kullanılmalıdır.

JOIN(Birlestirme) İki ilişkinin kartezyen çarpımının bir alt kümesi (P koşulunu sağlayan satırlar) seçilir. join (T1,T2,P) ≡ select(product(T1,T2),P) Çeşitli türleri vardır: Theta-join (yukarda tanımlandığı gibi, koşul üzerinden birleştirme) natural join(doğal birleştirme), outer join (dış birleştirme), inner join anti join semi join

Joined Relations Join operations take two relations and return as a result another relation. A join operation is a Cartesian product which requires that tuples in the two relations match (under some condition). It also specifies the attributes that are present in the result of the join. The join operations are typically used as subquery expressions in the from clause.

Joined Relations Relations course and prereq Join condition–defines which tuples in the two relations match, and what attributes are present in the result of the join. Join type–defines how tuples in each relation that do not match any tuple in the other relation (based on the join condition) are treated. Relations course and prereq

Join Specifics

Join Example course inner join prereq on course.course_id= prereq.course_id

Student record db state 23

select list students who graduated in 2004: Q1: select(STUDENT,GradYear=2004) list students who graduated in 2004 with a major of 10 or 20: Q2: select (STUDENT,GradYear=2004 and (MajorId=10 or MajorId=20)) Q3: select (select(STUDENT,GradYear=2004), MajorId=10 or MajorId=20) Q4: select (Q1, MajorId=10 or MajorId=20) query tree for Q3: 24

project List the name and graduation year of all students: Q5: project ( STUDENT, {SName,GradYear}) List the name of all students having major 10 Q6: project ( select(STUDENT, MajorId=10), {SName}) What about the following query? Q7: select ( project (STUDENT, {SName}), MajorId=10) Query tree for Q6: 25

union Requires both table has the same schema Find the combined names of students and professors Q52: rename( project(STUDENT, {Sname}), SName, Person) Q53: rename( project(SECTION, {Prof}), Prof, Person) Q54: union (Q52,Q53) 26