SS 2004Datenbanken 4WMi 13:30 – 15:00
G 2.30
Vorlesung #5
Relationale Anfragesprachen
© Bojan Milijaš, 14.04.2004 Vorlesung #5 - Relationale Anfragesprachen 2
SS 2004Datenbanken 4WMi 13:30 – 15:00
G 2.30„Fahrplan“
Besprechung der Übungsaufgaben Zusammenfassung und Fazit ER Relationen Formulierung der Anfragen im relationalen Modell Die Relationale Algebra (Selektion, Projektion,
Vereinigung, relationale Division, Mengendurchschnitt, Mengendifferenz, Joins, kartesisches Produkt etc.)
Der Relationenkalkül Der relationale Tupelkalkül Der relationale Domänenkalkül
Ausblick: SQL (Standard Query Language)
© Bojan Milijaš, 14.04.2004 Vorlesung #5 - Relationale Anfragesprachen 3
SS 2004Datenbanken 4WMi 13:30 – 15:00
G 2.30Orientierung und Motivation
Man braucht neben der Strukturbeschreibung (relationales Datenbankschema) auch eine Sprache, um die Informationen aus der Datenbank gemäß vorgegeben Kriterien extrahieren zu können
Relationale Algebra beinhaltet einen relational-algebraischen Ausdruck wird bei der Anfragenbearbeitung benutzt (wie werden die
Daten selektiert)
Relationenkalkül Rein deklarativ (was und nicht wie selektiert wird) Tupelkalkül Domänenkalkül
© Bojan Milijaš, 14.04.2004 Vorlesung #5 - Relationale Anfragesprachen 4
SS 2004Datenbanken 4WMi 13:30 – 15:00
G 2.30
Relationale AlgebraOperatoren (1)
Selektion Projektionx KreuzproduktA Join (Verbund) Umbenennung Mengendifferenz Division Vereinigung Mengendurchschnitt
© Bojan Milijaš, 14.04.2004 Vorlesung #5 - Relationale Anfragesprachen 5
SS 2004Datenbanken 4WMi 13:30 – 15:00
G 2.30
Relationale AlgebraOperatoren (2)
F Semi-Join (linker)
E Semi-Join (rechter)
C linker äußerer Join
D rechter äußerer Join
© Bojan Milijaš, 14.04.2004 Vorlesung #5 - Relationale Anfragesprachen 6
SS 2004Datenbanken 4WMi 13:30 – 15:00
G 2.30
© Bojan Milijaš, 14.04.2004 Vorlesung #5 - Relationale Anfragesprachen 7
SS 2004Datenbanken 4WMi 13:30 – 15:00
G 2.30
© Bojan Milijaš, 14.04.2004 Vorlesung #5 - Relationale Anfragesprachen 8
SS 2004Datenbanken 4WMi 13:30 – 15:00
G 2.30
© Bojan Milijaš, 14.04.2004 Vorlesung #5 - Relationale Anfragesprachen 9
SS 2004Datenbanken 4WMi 13:30 – 15:00
G 2.30
© Bojan Milijaš, 14.04.2004 Vorlesung #5 - Relationale Anfragesprachen 10
SS 2004Datenbanken 4WMi 13:30 – 15:00
G 2.30
© Bojan Milijaš, 14.04.2004 Vorlesung #5 - Relationale Anfragesprachen 11
SS 2004Datenbanken 4WMi 13:30 – 15:00
G 2.30
© Bojan Milijaš, 14.04.2004 Vorlesung #5 - Relationale Anfragesprachen 12
SS 2004Datenbanken 4WMi 13:30 – 15:00
G 2.30
© Bojan Milijaš, 14.04.2004 Vorlesung #5 - Relationale Anfragesprachen 13
SS 2004Datenbanken 4WMi 13:30 – 15:00
G 2.30
© Bojan Milijaš, 14.04.2004 Vorlesung #5 - Relationale Anfragesprachen 14
SS 2004Datenbanken 4WMi 13:30 – 15:00
G 2.30
© Bojan Milijaš, 14.04.2004 Vorlesung #5 - Relationale Anfragesprachen 15
SS 2004Datenbanken 4WMi 13:30 – 15:00
G 2.30
© Bojan Milijaš, 14.04.2004 Vorlesung #5 - Relationale Anfragesprachen 16
SS 2004Datenbanken 4WMi 13:30 – 15:00
G 2.30
© Bojan Milijaš, 14.04.2004 Vorlesung #5 - Relationale Anfragesprachen 17
SS 2004Datenbanken 4WMi 13:30 – 15:00
G 2.30
© Bojan Milijaš, 14.04.2004 Vorlesung #5 - Relationale Anfragesprachen 18
SS 2004Datenbanken 4WMi 13:30 – 15:00
G 2.30
© Bojan Milijaš, 14.04.2004 Vorlesung #5 - Relationale Anfragesprachen 19
SS 2004Datenbanken 4WMi 13:30 – 15:00
G 2.30
© Bojan Milijaš, 14.04.2004 Vorlesung #5 - Relationale Anfragesprachen 20
SS 2004Datenbanken 4WMi 13:30 – 15:00
G 2.30
© Bojan Milijaš, 14.04.2004 Vorlesung #5 - Relationale Anfragesprachen 21
SS 2004Datenbanken 4WMi 13:30 – 15:00
G 2.30
© Bojan Milijaš, 14.04.2004 Vorlesung #5 - Relationale Anfragesprachen 22
SS 2004Datenbanken 4WMi 13:30 – 15:00
G 2.30
© Bojan Milijaš, 14.04.2004 Vorlesung #5 - Relationale Anfragesprachen 23
SS 2004Datenbanken 4WMi 13:30 – 15:00
G 2.30
© Bojan Milijaš, 14.04.2004 Vorlesung #5 - Relationale Anfragesprachen 24
SS 2004Datenbanken 4WMi 13:30 – 15:00
G 2.30
© Bojan Milijaš, 14.04.2004 Vorlesung #5 - Relationale Anfragesprachen 25
SS 2004Datenbanken 4WMi 13:30 – 15:00
G 2.30
© Bojan Milijaš, 14.04.2004 Vorlesung #5 - Relationale Anfragesprachen 26
SS 2004Datenbanken 4WMi 13:30 – 15:00
G 2.30
© Bojan Milijaš, 14.04.2004 Vorlesung #5 - Relationale Anfragesprachen 27
SS 2004Datenbanken 4WMi 13:30 – 15:00
G 2.30
© Bojan Milijaš, 14.04.2004 Vorlesung #5 - Relationale Anfragesprachen 28
SS 2004Datenbanken 4WMi 13:30 – 15:00
G 2.30Fazit
Relationenalgebra und relationaler Tupelkalkül wurden vorgestellt
Relationale Algebra wird bei der Anfrageoptimierung benutzt sichere Sprache, liefert Ergebnisse in endlicher
Zeit Effizient auswertbar, da alle Operatoren
polynomiale Zeitkomplexität haben O(1), O(n), O(n log n), O (n2) - je nach Implementierung
Nicht Turing-vollständig, keine Rekursionen (keine Schleifen, keine Kontroll-Verzweigungen)
© Bojan Milijaš, 14.04.2004 Vorlesung #5 - Relationale Anfragesprachen 29
SS 2004Datenbanken 4WMi 13:30 – 15:00
G 2.30
SQL – na, endlich !!! SQL Geschichte und Standards SQL DDL (Data Definition Language)
Datentypen Schemadefinition CREATE TABLE
SQL DML (Data Manipulation Language) INSERT SELECT
Komplexe Abfragen, Null-Werte usw.
Ausblick Vorlesung #6
SS 2004Datenbanken 4WMi 13:30 – 15:00
G 2.30
Vorlesung #5
Ende