Query Languages (QL) Relationale Abfragesprachen/Relational
|
|
|
- Karl Otto
- vor 9 Jahren
- Abrufe
Transkript
1 Relationale Algebra
2 Relationale Abfragesprachen/Relational Query Languages (QL) Abfragesprachen: Daten aus einer Datenbank zu manipulieren und abzufragen (retrieve information) Das relationalle Modell hat einfache und leistungsfähige Abfragesprachen (man kann viel optimieren) Abfragesprache Programmiersprache Abfragesprachen: Nicht für komplexe Operationen Erlaubt einfacher und effizienter Zugriff zu großen Datensätze
3 Formale Relationale Abfragesprachen (Query Languages) Zwei mathematische Abfragesprachen stellen die theoretische Grundlage der reelen Abfragesprachen (wie z.b. SQL) in relationalen Datenbanken: Relationale Algebra: kann Ausführungspläne beschreiben (operational) Relationale Kalküle: Der Benutzer kann beschreiben was er haben will und nicht wie es berechnet werden soll (non-operational, deklarativ) Domänenkalkül, Tupelkalkül
4 Relationale Algebra Fünf Basisoperationen: Projektion ( π ) : wählt bestimmte Spalten aus der Relation und gibt diese als neue Relation aus ( löscht die anderen Spalten) Selektion ( σ ) : wählt bestimme Zeilen aus der Relation und gibt diese als neue Relation aus ( löscht die anderen Zeilen) Kartesisches Produkt ( ) : erlaubt die Verknüpfung zweier Relationen Differenz ( - ) : gibt die Tupeln aus der ersten Relation, die sich nicht in der zweiten Reltion befinden, aus Vereinigung ( ) : gibt die Tupeln aus der ersten und zweiten Relation aus Zusätzliche Opratoren: Umbenennen, Durchschnitt, Division, Verbund Die Operationen können zusammengesetzt sein (jede Operation hat eine Relation als Ergebnis)
5 Projektion Definition. Sei L = (A 1,, A n ) eine Teilmenge von Attributen(Spalten) aus der Relation R. Die Projektion der Attribute L einer Relation R ist definiert als die Relation R (A 1,, A n ) mit: R = π L (R) = { t t R t.a 1 = t.a 1 t.a n = t.a n } Oder, anders gesagt: die Projektion aus einem Tupel t R ist definiert als das Tupel π L (t) = (t(a 1 ),, t(a n )) Die Projektion der Relation R ist definiert als die Relation π L (R) = {π L (t) t R }
6 Projektion - Beispiel
7 Projektion in SQL Ist π Name,Ort (Studenten) äquivalent mit SELECT Name, Ort FROM Studenten? NEIN! Relationale Algebra funktioniert mit Mengen keine Duplikate(identische Tupeln) Das ist in SQL nicht standardmäßig so! Äquivalent: SELECT DISTINCT Name, Ort FROM Studenten
8 Selektion / Restriktion Definition. Die Selektion einer Relation R ist definiert als die Menge aller Tupel aus R, die der Selektionsbedingung P genügen: σ P (R) = { t t R P(t) } Die Bedingung P setzt sich zusammen aus: Operanden: Konstanten oder Name eines Attributs Vergleichsoperatoren: =,, <,, >, Boolsche Operatoren:,,
9 Selektion - Beispiel
10 Selektion in SQL σ Name = `Schmidt`(Studenten) SELECT DISTINCT * FROM Studenten WHERE Name = `Schmidt`
11 Aufpassen Nicht verwechseln: Projektion - π Attr1, Attr2 (Relation) SELECT DISTINCT Attr1, Attr2 FROM Relation WHERE c Selektion - σ c (Relation)
12 Zusammensetzung von Projektion und Selektion π Name, Vorname, Ort (σ Name = `Schmidt`(Studenten)) SELECT DISTINCT Name, Vorname, Ort FROM Studenten WHERE Name = `Schmidt` σ Name = `Schmidt`(π Name, Vorname, Ort (Studenten)) Welches ist das äquivalente SQL Query? Kann man immer die Reihenfolge der Projektion und Selektion wechseln? Nein die Selektion kann nach der Projektion ausgeführt werden, nur dann wenn die Selektionsbedingung nur Attribute aus der Projektion enthält
13 Vereinigung, Durchschnitt, Differenz Vereinigung: R 1 R 2 = { t t R 1 t R 2 } Durchschnitt: R 1 R 2 = { t t R 1 t R 2 } Differenz: R 1 R 2 = { t t R 1 t R 2 } R und S müssen für alle diese Operationen gleiches Relationenschema besitzen Wertebereiche müssen kompatibel oder vereinigungsverträglich sein Bem. Es gilt R 1 R 2 = R 1 (R 1 R 2 )
14 Vereinigung, Durchschnitt, Differenz in SQL R 1 R 2 R 1 R 2 R 1 R 2 SELECT DISTINCT * FROM R 1 UNION SELECT DISTINCT * FROM R 2 SELECT DISTINCT * FROM R 1 INTERSECT SELECT DISTINCT * FROM R 2 SELECT DISTINCT * FROM R 1 EXCEPT SELECT DISTINCT * FROM R 2
15 Kartesisches Produkt Das kartesische Produkt zweier Relationen R 1 (A 1,, A n ) und R 2 (B 1,, B m ) ist definiert als Relation: R 1 R 2 = { t t 1 R 1 ᴧ t 2 R 2 SQL: ᴧ t.a 1 = t 1.A 1 ᴧ ᴧ t.a n = t 1.A n ᴧ t.b 1 = t 2.B 1 ᴧ ᴧ t.b m = t 2.B m } SELECT DISTINCT * FROM R 1, R 2
16 Kartesisches Produkt - Beispiel
17 θ-join (Theta-Verbund) Auswahl bestimmter Tupel aus dem kartesischen Produkt R 1 R 2 Basis der Verknüpfung der Relationen: eine Bedingung c R 1 c R 2 = σ c (R 1 R 2 ) Bsp. Studenten Studenten.MatrikelNr = Enrolled.MatrikelNr Enrolled SQL: SELECT DISTINCT * FROM Studenten, Enrolled WHERE Studenten.MatrikelNr = Enrolled.MatrikelNr oder SELECT DISTINCT * FROM Studenten INNER JOIN Enrolled ON Studenten.MatrikelNr = Enrolled.MatrikelNr
18 Equi-Join Einen θ-join der Form R 1 R1.A i = R 2.B j R 2 nennt man Equi-Join Notation für Equi-Join um zu unterscheiden: R 1 E(R1.A i = R 2.B j )R 2 Die Bedingung muss der Form einer Gleichwertigkeit zwischen Attribute der ersten und der zweiten Relation sein Das Ergebnis enthält nur einen der Attribute, da es redundant ist beide zu behalten (die Attribute sind gleich)
19 Equi-Join Beispiel Kurse Enrolled Kurse E(Kurse.KursId=Enrolled.KursId) Enrolled KursId Alg1 DB1 DB2 Titel Algorithmen1 Datenbanken1 Datenbanken2 MatrNr KursId Note 1234 Alg Alg DB DB DB1 10 KursId Titel MatrNr Note Alg1 Algorithmen Alg1 Algorithmen DB1 Datenbanken DB2 Datenbanken DB1 Datenbanken
20 Natürlicher Verbund Verknüpft zwei Relationen indem alle gleichbenannten Attribute der beiden Relationen betrachtet werden und nur einen der gleichen Attribute kommt in das Ergebnis vor (ohne Redundanzen) Qualifizierende Tupel müssen für diese gleichbenannten Attribute gleiche Werte aufweisen, um in das Ergebnis einzugehen Gibt es kein gemeinsames Attribut so ist das Ergebnis das kartesische Produkt Kurse Enrolled Kurse Enrolled KursId Titel MatrNr KursId Note KursId Titel MatrNr Note Alg1 Algorithmen Alg1 7 Alg1 Algorithmen DB1 Datenbanken Alg1 8 Alg1 Algorithmen DB2 Datenbanken DB1 9 DB1 Datenbanken DB2 7 DB2 Datenbanken DB1 10 DB1 Datenbanken
21 Division Die Relation R 1 enthält Attribute X und Y und R 2 enthält den Attribut Y. R 1 R 2 = { <X> <Y> R 2 : <X,Y> R 1 } R 1 R 2 (oder R 1 / R 2 ) enthält alle X Tupeln so dass für jede Y Tupel in R 2, eine XY Tupel in R 1 existiert X und Y können auch Mengen von Attributen sein
22 Division Nicht als primitiver Operator, aber nützlich Die Division wird dann eingesetzt, wenn die Frage für alle enthält Beispielfragestellungen für eine Division: Welche Personen haben eine Kundenkarte von allen Filialen? Welche Mitarbeiter arbeiten an allen Projekten? Welche Studenten hören alle Vorlesungen von Prof. X?
23 Division Darstellung des Quotienten durch die Basisoperatoren: Idee: Berechne alle X Werte, die von irgendeinem Y Wert aus R 2 disqualifiziert wird X wird disqualifiziert wenn für einen Y der Tupel XY nicht in R 1 enthalten ist: π X ( ( π X (R 1 ) R 2 ) R 1 ) Der Quotient R 1 R 2 enthält dann alle X Werte aus R 1, die nicht disqualifiziert sind: R 1 R 2 = π X (R 1 ) π X ( ( π X (R 1 ) R 2 ) R 1 )
24 Division - Beispiel R 1 R 2 R 1 R 2 A B A B
25 Umbenennen von Relationen und Attributen Umbenennung unterscheidet sich von den anderen Operatoren dadurch, dass keine Berechnung vorgenommen wird Operator ist aber notwendig, wenn eine Relation mehrfach in einer Anfrage vorkommt (z.b. Join) ρ S (R) : Relation R wird in Relation S umbenannt ρ B A (R) : Attribut A der Relation R wird umbenannt in B Das Relationenschema wird nicht geändert (nur eventuell Namen von Attributen)
26 Zuweisungsoperation Die Zuweisungsoperation ist eine Methode komplexe Abfragen zu representieren Eine Abfrage kann in einer temporären Variable gespeichert werden Temp π X (R 1 R 2 ) Dann kann man diese Variable in weiteren Abfragen benutzen Erg Temp R 3
27 Komplexe Abfragen R 1 (R 2 π b (R 3 ρ R5 (ρ b a(r 4 )))) R 1 R 2 π b Ausführungsplan R 3 ρ R5 ρ b a(r 4 )
28 Studenten Kurse Enrolled MatrNr Name Vorname 1234 Schmidt Hans 1235 Meisel Amelie 1236 Krause Julia 1237 Rasch Lara 1238 Schmidt Christian KursId Titel ECTS Alg1 Algorithmen1 6 DB1 Datenbanken1 6 DB2 Datenbanken2 5 MatrNr KursId Note 1234 Alg Alg DB DB DB1 10
29 Geben Sie die Namen der Studenten aus, die für den Kurs `BD1` angemeldet sind Lsg1. Lsg2. Lsg3. π Name ((σ KursId=`BD1`(Enrolled)) Studenten) ρ Temp1 (σ KursId=`BD1`(Enrolled)) ρ Temp2 (Temp1 Studenten) π Name (Temp2) π Name (σ KursId=`BD1`(Enrolled Studenten))
30 Geben Sie die Namen der Studenten aus, die für einen Kurs mit 5 ECTS angemeldet sind Lsg1. Lsg2. π Name ((σ ECTS=5 (Kurse)) Enrolled Studenten) π Name (π MatrNr (π KursId (σ ECTS=5 (Kurse)) Enrolled) Studenten) Lsg2 ist effizienter. Ein Abfrageoptimierer würde, gegeben die erste Abfrage, die zweite Abfrage finden.
31 Geben Sie die Namen der Studenten aus, die für einen Kurs mit 5 oder 6 ECTS angemeldet sind Wir können erstmal die Kurse mit 5 oder 6 ECTS ausgeben und dann die Studenten die in einem dieser Kurse angemeldet sind ρ TempKurse (σ ECTS=5 ECTS=6 (Kurse)) π Name (TempKurse Enrolled Studenten) Was passiert wenn wir oder mit und ersetzen
32 Geben Sie die Namen der Studenten aus, die für einen Kurs mit 5 ECTS und einen Kurs mit 6 ECTS angemeldet sind Die vorige Idee funktionniert nicht mehr. Wir müssen die Studenten finden, die in einem 5 ECTS Kurs angemeldet sind und die die in einem 6 ECTS Kurs angemeldet sind und den Durchschnitt berechnen ρ Temp5 (π MatrNr (σ ECTS=5 (Kurse) Enrolled)) ρ Temp6 (π MatrNr (σ ECTS=6 (Kurse) Enrolled)) π Name ((Temp5 Temp6) Studenten)
33 Geben Sie die Namen der Studenten aus, die für alle Kurse angemeldet sind Für alle wir benutzen Division ρ TempMatrNr (π MatrNr,KursId (Enrolled) / π KursId (Kurse)) π Name ( TempMatrNr Studenten)
34 Erweiterte Relationale Algebra Operatoren Erweiterte Projektion Aggregat Funktionen Outer Join Datenbank Änderungen
35 Erweiterte Projektion Erweitert die Projektion, indem arithmetische Funktionen als Projektionbedingung benutzt werden können π F1,,Fn (R) F1,, Fn sind arithmetische Funktionen, die Konstante oder Attribute der Relation R enthalten
36 Aggregat Funktionen Haben mehrere Werte als Input und ein Wert als Output: avg: Mittelwert min: Minimum der Werte max: Maximum der Werte sum: Summe der Werte count: Anzahl der Werte
37 Aggregat Funktionen in Relationale Algebra G 1, G 2,,G n ϑ F1 (A 1 ), F 2 (A 2 ),, F n (A n ) (R) G 1, G 2,,G n eine Liste von Attributen worauf wir gruppieren wollen F i Aggregatfunktion A i Name eines Attributes
38 Aggregat Funktionen - Beispiel Relation R: A B C a 2 5 b 3 3 a 4 4 ϑ sum(c) (R) 12
39 Outer Join Erweiterung von Join-Operationen: Left Outer Join - alle Tupel aus der linken Relation, die keinen Join-Partner in der rechten Relation haben, werden trotzdem ausgegeben Right Outer Join - alle Tupel aus der rechten Relation, die keinen Join- Partner in der linken Relation haben, werden trotzdem ausgegeben Full Outer Join - alle Tupel sowohl der linken als auch der rechten Reltion, die keinen Join-Partner haben, werden trotzdem ausgegeben Null-Werte werden benutzt: Tupeln aus der Relation R, die keinen Join-Partner in der Relation S hatten enthalten Null-Werte für die entsprechenden Spalten der Relation S Ein Null-Wert heißt unbekannt oder inexistent Alle Vergleiche mit einem Null-Wert werden in der Regel als FALSE bewertet
40 Outer Join - SQL
41 Datenbank Änderungen Der Inhalt der Datenbank kann durch folgenden Operationen geändert werden: Löschen: R R E Einfügen: R R E Aktualisierung/Updating: R π F1,, Fn (R)
SQL. DDL (Data Definition Language) Befehle und DML(Data Manipulation Language)
SQL DDL (Data Definition Language) Befehle und DML(Data Manipulation Language) DML(Data Manipulation Language) SQL Abfragen Studenten MatrNr Name Vorname Email Age Gruppe 1234 Schmidt Hans [email protected]
Relationen-Algebra. Prof. Dr. T. Kudraß 1
Relationen-Algebra Prof. Dr. T. Kudraß 1 Relationale Anfragesprachen Query Language (QL): Manipulation und Retrieval von Daten einer Datenbank Relationenmodell erlaubt einfache, mächtige Anfragesprachen
SQL. DDL (Data Definition Language) Befehle und DML(Data Manipulation Language)
SQL DDL (Data Definition Language) Befehle und DML(Data Manipulation Language) DML(Data Manipulation Language) SQL Abfragen Studenten MatrNr Name Vorname Email Age Gruppe 1234 Schmidt Hans [email protected]
SQL. DDL (Data Definition Language) Befehle und DML(Data Manipulation Language)
SQL DDL (Data Definition Language) Befehle und DML(Data Manipulation Language) DML(Data Manipulation Language) SQL Abfragen Studenten MatrNr Name Vorname Email Age Gruppe 1234 Schmidt Hans [email protected]
Seminar 2. SQL - DML(Data Manipulation Language) und. DDL(Data Definition Language) Befehle.
Seminar 2 SQL - DML(Data Manipulation Language) und DDL(Data Definition Language) Befehle. DML Befehle Aggregatfunktionen - werden auf eine Menge von Tupeln angewendet - Verdichtung einzelner Tupeln yu
Rückblick: Relationale Normalisierung
Rückblick: Relationale Normalisierung Gute Relationenschema vermeiden Redundanz und führen nicht zu Anomalien beim Einfügen, Löschen oder Ändern Relationale Normalformen (1NF, 2NF, 3NF, BCNF, 4NF) charakterisieren
2.5 Relationale Algebra
2.5 Relationale Algebra 2.5.1 Überblick Codd-vollständige relationale Sprachen Relationale Algebra Abfragen werden durch exakte Angabe der auf den Relationen durchzuführenden Operationen formuliert Relationenkalküle
3.4 Die relationale Algebra
Algebra: 3.4 Die relationale Algebra gegeben eine Menge N ( Anker der Algebra ) Menge von Operationen { σ 1,, σ n } der Form σ j :N k N elationale Algebra Anker ist die Menge aller elationen {(, I) I ist
Wiederholung VU Datenmodellierung
Wiederholung VU Datenmodellierung VU Datenbanksysteme Reinhard Pichler Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Wintersemester
Das Relationale Modell
Kapitel 3 Das Relationale Modell 1 / 50 Generelle Anmerkungen Wurde in den Siebzigern von E.F.Codd entwickelt (er bekam den Turing Award dafür) Im Moment das am weitesten verbreitete Datenmodell Hat die
Daten-Definitionssprache (DDL) Bisher: Realwelt -> ERM -> Relationen-Modell -> normalisiertes Relationen-Modell. Jetzt: -> Formulierung in DDL
Daten-Definitionssprache (DDL) Bisher: Realwelt -> ERM -> Relationen-Modell -> normalisiertes Relationen-Modell Jetzt: -> Formulierung in DDL Daten-Definitionssprache (DDL) DDL ist Teil von SQL (Structured
SQL. Ziele. Grundlagen von SQL. Beziehung zur relationalen Algebra SELECT, FROM, WHERE. Joins ORDER BY. Aggregatfunktionen. dbis.
SQL Lehr- und Forschungseinheit Datenbanken und Informationssysteme Ziele Grundlagen von SQL Beziehung zur relationalen Algebra SELECT, FROM, WHERE Joins ORDER BY Aggregatfunktionen Lehr- und Forschungseinheit
Schlüssel. Definition: Ein Schlüssel (key) einer Relation r(r) ist eine Til Teilmenge K von R, so dass für je zwei verschiedene Tupeln t 1
Schlüssel Definition: Ein Schlüssel (key) einer Relation r(r) ist eine Til Teilmenge K von R, so dass für je zwei verschiedene Tupeln t 1 und t 2 r gilt: - t 1 (K) t 2 (K) und - keine echte Teilmenge K'
Datenbanken Unit 4: Das Relationale Modell & Datenintegrität
Datenbanken Unit 4: Das Relationale Modell & Datenintegrität 15. III. 2016 Outline 1 Organisatorisches 2 SQL 3 Relationale Algebra Notation 4 Datenintegrität Organisatorisches Erster Zwischentest: nach
Vorlesung Datenbanksysteme vom
Vorlesung Datenbanksysteme vom 27.10.2008 Wiederholung: Relationale Algebra Relationale Algebra Join-Operatoren Eigenschaften der relationalen Operatoren Grundlagen des relationalen Modells Seien D 1,
SQL als Zugriffssprache
SQL als Zugriffssprache Der Select Befehl: Aufbau Select- und From-Klausel Where-Klausel Group-By- und Having-Klausel Union Join-Verbindung Order-By-Klausel Der Update-Befehl Der Delete-Befehl Der Insert-Befehl
insert, update, delete Definition des Datenbankschemas select, from, where Rechteverwaltung, Transaktionskontrolle
Einführung in SQL insert, update, delete Definition des Datenbankschemas select, from, where Rechteverwaltung, Transaktionskontrolle Quelle Wikipedia, 3.9.2015 SQL zur Kommunikation mit dem DBMS SQL ist
Übung 4. Tutorübung zu Grundlagen: Datenbanken (Gruppen Do-T24 / Do-T31 WS 2016/2017)
Übung 4 Tutorübung zu Grundlagen: Datenbanken (Gruppen Do-T24 / Do-T31 WS 2016/2017) Dennis Fischer [email protected] http://home.in.tum.de/~fischerd/ Technische Universität München Fakultät für Informatik
Grundlagen von Datenbanken. Relationale Algebra und algebraische Optimierung
Grundlagen von Datenbanken Relationale Algebra und algebraische Optimierung Relationale Algebra Überblick Selektion: σ Projektion: π Mengenoperationen:,,,, Kartesisches Produkt: Verbund (Join): Umbenennung:
WS 2010/11 Datenbanksysteme Fr 15:15 16:45 R Vorlesung #4. SQL (Teil 2)
Vorlesung #4 SQL (Teil 2) Fahrplan Eine weitere Aggregation: median Geschachtelte Anfragen in SQL Korrelierte vs. Unkorrelierte Anfragen Entschachtelung der Anfragen Operationen der Mengenlehre Spezielle
Wiederholung VU Datenmodellierung
Wiederholung VU Datenmodellierung VL Datenbanksysteme Reinhard Pichler Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Wintersemester
Aggregatfunktionen in der Relationenalgebra?
Aggregatfunktionen in der Relationenalgebra? Dieter Sosna Aggregatfunktionen in der Relationenalgebra p.1/23 Gliederung Motivation Begriffe Definitionen Anwendungen Zusammenfassung Aggregatfunktionen in
SELECT dient dazu, aus einer vorhandenen Datenbank bestimmte Spalten und Zeilen auszugeben es handelt sich also um eine Auswahlabfrage.
SELECT-FROM SELECT dient dazu, aus einer vorhandenen Datenbank bestimmte Spalten und Zeilen auszugeben es handelt sich also um eine Auswahlabfrage. Inhaltsverzeichnis 1 Der grundlegende Aufbau 2 Doppelte
ISU 1. Ue_08/02_Datenbanken/SQL. 08 Datenbanken. Übung. SQL Einführung. Eckbert Jankowski. www.iit.tu-cottbus.de
08 Datenbanken Übung SQL Einführung Eckbert Jankowski www.iit.tu-cottbus.de Datenmodell (Wiederholung, Zusammenfassung) Objekte und deren Eigenschaften definieren Beziehungen zwischen den Objekten erkennen/definieren
WS 2010/11 Datenbanksysteme Fr 15:15 16:45 R Vorlesung #3. SQL (Teil 1)
Vorlesung #3 SQL (Teil 1) Fahrplan Wiederholung/Zusammenfassung Relationales Modell Relationale Algebra Relationenkalkül Geschichte der Sprache SQL SQL DDL (CREATE TABLE...) SQL DML (INSERT, UPDATE, DELETE)
Rückblick. SQL bietet viele Möglichkeiten zur Anfrageformulierung
Rückblick SQL bietet viele Möglichkeiten zur Anfrageformulierung mathematische Funktionen (z.b. ABS(A) und SIGN(A)) Aggregatfunktionen (z.b. MIN(A) und SUM(A)) Boole sche Operatoren (AND, OR, EXCEPT) Verknüpfungen
Diskussion: Personal (1)
Diskussion: Personal (1) ER-Diagramm: Abteilung ist beschäftigt in [0, n] [0, 1] Person Umsetzung ins Relationenmodell? Diskussion: Personal (2) Zusätzliche Regel: In jeder Abteilung (Person) muss mindestens
Nachtrag: Farben. Farbblindheit. (Light und Bartlein 2004)
Nachtrag: Farben Farbblindheit (Light und Bartlein 2004) 1 Vorgeschlagene Farbskalen (Light and Bartlein 2004) Farbkodierung metrisch skalierter Daten Unterscheide: 1. Sequential Data (ohne Betonung der
Grundlagen von Datenbanken
Agenda: Grundlagen von Datenbanken SS 2010 3. Relationale Algebra Prof. Dr. Stefan Böttcher Universität Paderborn mit Material von Prof. Dr. Gregor Engels Grundlagen von Datenbanken - SS 2010 - Prof. Dr.
4. Relationenalgebra. Einleitung. Selektion und Projektion Mengenoperatoren. Verbundoperationen (Join) Division Beispielanfragen
Einleitung 4. Relationenalgebra Selektion und Projektion Mengenoperatoren Vereinigung, Durchschnitt, Differenz kartesisches Produkt Verbundoperationen (Join) Theta-Join natürlicher Verbund Semi-Join äußerer
Relationales Datenmodell Relationale Algebra
Web Science & Technologies University of Koblenz Landau, Germany Grundlagen der Datenbanken Relationale Algebra Dr. Gerd Gröner Wintersemester 2013/14 Lernziele Grundbegriffe des Relationalen Modells Abbildung
Kapitel 6. Datenmalipulation (DML) d. h. insert, update, delete, select im Relationenmodell (in Oracle)
Kapitel 6 Datenmalipulation (DML) d. h. insert, update, delete, select im Relationenmodell (in Oracle) 1 Datenmanipulationssprache (DML) SQL Einfügen: Insert-Statement Ändern: Update-Statement Löschen:
SQL. strukturierte Datenbankabfragesprache eine Datenbanksprache zur. Structured Query Language:
SQL Structured Query Language: strukturierte Datenbankabfragesprache eine Datenbanksprache zur Definition, Abfrage und Manipulation von Daten in relationalen Datenbanken In der SQL-Ansicht arbeiten In
mit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 14. Mai 2007 σ KID= 11a (Schüler) π S Name (σ KID= 11a (Schüler))
3. Übung zur Vorlesung Datenbanken im Sommersemester 2007 mit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 14. Mai 2007 Hinweis: Wir schlagen vor, die Aufgaben in der Reihenfolge
Datenbanksysteme I WS 17/18 HS-Übung. Universität Leipzig, Institut für Informatik Abteilung Datenbanken Prof. Dr. E. Rahm, V. Christen, M.
Datenbanksysteme I WS 17/18 HS-Übung Universität Leipzig, Institut für Informatik Abteilung Datenbanken Prof. Dr. E. Rahm, V. Christen, M. Franke Kapitel 1: Definitionen Grundlegenge Begriffe IS, DB, DBMS/
Datenbanksysteme Kapitel 5: SQL Data Manipulation Language
Datenbanksysteme Kapitel 5: SQL Data Manipulation Language Prof. Dr. Peter Chamoni Mercator School of Management Lehrstuhl für Wirtschaftsinformatik, insb. Business Intelligence Prof. Dr. Peter Chamoni
Übersicht der wichtigsten MySQL-Befehle
Übersicht der wichtigsten MySQL-Befehle 1. Arbeiten mit Datenbanken 1.1 Datenbank anlegen Eine Datenbank kann man wie folgt erstellen. CREATE DATABASE db_namen; 1.2 Existierende Datenbanken anzeigen Mit
3 Query Language (QL) Einfachste Abfrage Ordnen Gruppieren... 7
1 Data Definition Language (DDL)... 2 1.1 Tabellen erstellen... 2 1.1.1 Datentyp...... 2 1.1.2 Zusätze.... 2 1.2 Tabellen löschen... 2 1.3 Tabellen ändern (Spalten hinzufügen)... 2 1.4 Tabellen ändern
Mengenvergleiche: Alle Konten außer das, mit dem größten Saldo.
Mengenvergleiche: Mehr Möglichkeiten als der in-operator bietet der θany und der θall-operator, also der Vergleich mit irgendeinem oder jedem Tupel der Unteranfrage. Alle Konten außer das, mit dem größten
Entity Relationship Modell
Entity Relationship Modell 2 Entity/Relationship (ER) Modell Legi Name Semester Entity = Gegenstandstyp Relationship = Beziehungstyp Schlüssel (Identifikation) Studenten hören Hörer Kurs Vorlesungen Attribut
SQL. SQL SELECT Anweisung SQL-SELECT SQL-SELECT
SQL SQL SELECT Anweisung Mit der SQL SELECT-Anweisung werden Datenwerte aus einer oder mehreren Tabellen einer Datenbank ausgewählt. Das Ergebnis der Auswahl ist erneut eine Tabelle, die sich dynamisch
Anfrageoptimierung Logische Optimierung
Institute for Web Science & Technologies WeST Grundlagen der Datenbanken Logische Optimierung Dr. Thomas Gottron Wintersemester 2012/13 Ablauf der Deklarative Anfrage Scanner Parser Sichtenauflösung Algebraischer
Gruppe A Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit.
Gruppe A Bitte tragen Sie SOFORT und LESERLICH Namen und Matrikelnr. ein, und legen Sie Ihren Studentenausweis bereit. PRÜFUNG AUS DATENMODELLIERUNG (184.685) GRUPPE A MUSTERLÖSUNG 06.05.2014 Matrikelnr.
Abstraktionsschichten. Das Relationale Datenmodell
Abstraktionsschichten. Das Relationale Datenmodell Verschiedene Abstraktionsebene Data in Beziehung zur Application Data in Beziehung zur Datenmodell Data in Beziehung zur physischen Darstellung Datenunabhängigkeit
Einführung in Datenbanken. Kapitel 11: Relationale Algebra in SQL
Stefan Brass: Einf. in Datenbanken 11. Relationale Algebra in SQL 1/48 Einführung in Datenbanken Kapitel 11: Relationale Algebra in SQL Prof. Dr. Stefan Brass Martin-Luther-Universität Halle-Wittenberg
Wirtschaftsinformatik 7a: Datenbanken. Hochschule für Wirtschaft und Recht SS 16 Dozent: R. Witte
Wirtschaftsinformatik 7a: Datenbanken Hochschule für Wirtschaft und Recht SS 16 Dozent: R. Witte Drei Gäste bezahlen nach einem gemeinsamen Abendessen eine Rechnung von 30 Euro, so dass jeder 10 Euro gibt.
ACCESS SQL ACCESS SQL
ACCESS SQL Datenbankabfragen mit der Query-Language ACCESS SQL Datenbankpraxis mit Access 34 Was ist SQL Structured Query Language Bestehend aus Datendefinitionssprache (DDL) Datenmanipulationssprache
Relationale Datenbanksprachen
Relationale Datenbanksprachen SQL-Kern Weitere Sprachkonstrukte von SQL SQL-Versionen Andreas Heuer, Gunter Saake Datenbanken I 9-1 Sprachen und ihre Grundlagen Grundlagen Kommerzielle Sprachen ISBL SQL
[W, T4, D, 15] [start_transaction, T3] [W, T3, C, 30] [W, T4, A, 20] [commit, T4] [W, T2, D, 25] System Crash
Übungen Aufgabe 1 Geben ist die folgende Logdatei: [start_transaction, T1] [W, T1, D, 20] [commit, T1] [checkpoint] [start_transaction, T2] [W, T2, B, 12] [start_transaction, T4] [W, T4, D, 15] [start_transaction,
Grundlagen: Datenbanken
Grundlagen: Datenbanken 1. Zentralübung Harald Lang FAQs Ist der Prüfungtermin schon bekannt? Termin: Mi. 18.02.2015, 08:00 Uhr FAQs Gilt der Bonus auch für die Nachholklausur? Ja. Selbst dann, wenn die
Fortsetzung: Projektion Selektion. NULL Werte
Fortsetzung: Anfragen mit SQL Bisher: Projektion Selektion Duplikatbehandlung NULL Werte Professoren PersNr Name Rang Raum 2125 Sokrates 226 2126 Russel 232 2127 Kopernikus C3 310 2133 Popper C3 52 2134
Datenmanipulation in SQL (1): Subselect:
Datenmanipulation in SQL (1): Unter Datenmanipulation wird sowohl der lesende Zugriff auf die Daten (Select Statement) als auch die Änderung von Daten (Insert, Delete, Update) subsummiert. Wir beginnen
TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.
TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D. Blatt Nr. 05 Übung zur Vorlesung Grundlagen: Datenbanken im W15/16 Harald Lang, Linnea Passing ([email protected]
Kap. 3 Relationenmodell mit relationaler Algebra
Kap. 3 Relationenmodell mit relationaler Algebra Kap. 3.1. Trägermenge Seien D 1, D 2,..., D k Domänen: (Typen, Arten, Sorten, Wertmengen) z.b. string integer real Boolean DateTime BLOB, TIFF-image, HTML-Doc,
Aggregatfunktionen in SQL
Aggregatfunktionen in SQL Michael Dienert 14. April 2008 1 Definition von Aggregatfunktionen Ihren Namen haben die Aggregatfunktionen vom englischen Verb to aggregate, was auf deutsch anhäufen, vereinigen,
Datenbanksysteme SS 2007
Datenbanksysteme SS 2007 Frank Köster (Oliver Vornberger) Institut für Informatik Universität Osnabrück Kapitel 6b: Das relationale Modell Das Relationale Modell (vgl. Lerneinheit 6a) Wertebereiche (Domänen):
Kapitel 2: Grundlagen von Anfragesprachen
2. Grundlagen von Anfragesprachen Seite 1 Kapitel 2: Grundlagen von Anfragesprachen Sprachparadigmen Relationenalgebra Relationenkalkül später SQL 2. Grundlagen von Anfragesprachen 2.1. Relationenalgebra
3. Grundlagen relationaler Datenbanksysteme
3. Grundlagen relationaler Datenbanksysteme Hier nur kurze Rekapitulation, bei Bedarf nachlesen 3.1 Basiskonzepte des Relationenmodells 1 Darstellung der Miniwelt in Tabellenform (DB = Menge von Relationen
Informationsmanagement u. Numerische Methoden
Fakultät Bauingenieurwesen Institut für Bauinformatik, Prof. Dr.-Ing. Raimar J. Scherer Informationsmanagement u. Numerische Methoden Relationale und Objekt-orientierte Datenstrukturen 6. Semester 2. Vorlesung:
Wiederholung: Relationale Algebra
Vorlesung Datenbanksysteme vom 1.11.016 Wiederholung: Relationale Algebra Relationale Algebra Join-Operatoren Eigenschaften der relationalen Operatoren Grundlagen des relationalen Modells Seien D1, D,,
Anwendungsentwicklung Datenbanken SQL. Stefan Goebel
Anwendungsentwicklung Datenbanken SQL Stefan Goebel SQL Structured Query Language strukturierte Abfragesprache von ANSI und ISO standardisiert deklarativ bedeutet was statt wie SQL beschreibt, welche Daten
Datenbanksysteme Kapitel 5: SQL - Grundlagen
Datenbanksysteme Kapitel 5: SQL - Grundlagen Prof. Dr. Peter Chamoni Mercator School of Management Lehrstuhl für Wirtschaftsinformatik, insb. Business Intelligence Prof. Dr. Prof. Peter Dr. Chamoni Peter
Wirtschaftsinformatik 7a: Datenbanken. Dozent: R. Witte
Wirtschaftsinformatik 7a: Datenbanken Dozent: R. Witte Drei Gäste bezahlen nach einem gemeinsamen Abendessen eine Rechnung von 30 Euro, so dass jeder 10 Euro gibt. Der Wirt gibt dem Kellner den Auftrag
Datenbanksysteme Kapitel 5: SQL Grundlagen Teil 1
Datenbanksysteme Kapitel 5: SQL Grundlagen Teil 1 Prof. Dr. Peter Chamoni Mercator School of Management Lehrstuhl für Wirtschaftsinformatik, insb. Business Intelligence Prof. Prof. Dr. Dr. Peter Peter
Garten - Daten Bank. - survival pack -
Garten - Daten Bank - survival pack - Dr. Karsten Tolle PRG2 SS 2017 Inhalt heute Kurz: Motivation und Begriffe SQL (survival pack) create table (Tabelle erzeugen) insert into (Einfügen) select (Anfragen)
[ SQL] Wissen, das sich auszahlt
[www.teia.de SQL] Wissen, das sich auszahlt INHALT SEITE 12 [I] 1] Einführung in SQL und relationale Datenbanken 12 14 16 18 11 1.1 1.2 Einführung Die Structured Query Language (SQL) Tabellen Mehrere Tabellen
Anfragebearbeitung. Logische Optimierung Physische Optimierung (Kostenmodelle Tuning ) Kapitel 8 1
Anfragebearbeitung Logische Optimierung Physische Optimierung (Kostenmodelle Tuning ) Kapitel 8 1 Ablauf der Anfrageoptimierung Deklarative Anfrage (SQL) Scanner Parser Sichtenauflösung Algebraischer Ausdruck
