Quickmenu
ERM der vollständig in Beziehungen gesetzten Datenbasis mit korrekt gesetzten Beziehungen
Ansicht der vollständig implementierten Datenbasis mit korrekt gesetzten Beziehungen
Aufgabe0: Setzen Sie alle Tabellen in ein Beziehungsgefüge entsprechend dem ERM!
(10 Punkte)
Aufgabe1: Gesucht sind alle Piloten, welche derzeit nicht flugtauglich sind!
(6Zieldatensätze - 1 Punkt)
Aufgabe 2: Gesucht Typ und Baujahr von Flugzeugen, welche vor 1991 gebaut wurden!
(5 Zieldatensätze - 2 Punkte)
Aufgabe 3: Gesucht ist das Datum, an welchem Paris als Zielflughafen erreicht werden kann!
(2 Zieldatensätze - 2 Punkte)
Aufgabe 4: Welche Flugzeugtypen wurden zwischen 1970 und 1980 gebaut!
(1 Zieldatensatz - 2 Punkte)
Aufgabe 5: Gesucht sind die Namen und Vornamen aller Piloten, die eine BOING fliegen!
(3 Zieldatensätze - 2 Punkte)
Aufgabe 6: Gesucht sind die Namen sowie Flugstundenzahl des Piloten mit den meisten Flugstunden!
(1 Zieldatensatze - 3 Punkte)
Aufgabe7: Anzuzeigen ist die Summe aller verfügbaren Sitzplätze in den Maschinen!
(1 Zieldatensatz - 3 Punkte)
Aufgabe 8: Welche Flugzeugnummern machen keinen Zwischenstopp?
(4 Zieldatensätze - 3 Punkte)
Aufgabe 9: Gesucht sind Namen und Vornamen von Piloten, die Rom anfliegen (... also irgendwann auf irgendeinem Flug Rom passieren!!!)!
(2 Zieldatensätze - 4 Punkte)
Aufgabe 10: Gesucht sind Namen und Vornamen von Piloten, die Maschinen mit mehr als 200 Sitzplätzen fliegen und deren Maschine 1980 gebaut wurde!
(0 Zieldatensätze - 4 Punkte)
Aufgabe 11: Gesucht sind die Linien, auf denen die Piloten Kühnert, Pirschkes und Colbe unterwegs sind - geben Sie dabei zwei verschiedene Lösungen (als a und b) an!
(6 Zieldatensätze - 6 Punkte)
MATNR | NAME | LEHRST |
ABCX1 | Müller | DB |
FRSR2 | Gross | BS |
GFDS7 | Meier | RS |
OUZT9 | Klein | IS |
TTHC9 | Meier | DB |
Tabelle 1 PRO1 (Einschreibliste 1)
MATNR | NAME | LEHRST |
FRSR2 | Gross | BS |
GOJK4 | Baum | SWT |
NIKT7 | Bauer | IS |
TTHC9 | Meier | DB |
ZTRE5 | Klein | RS |
Tabelle 2 PRO2 (Einschreibliste 2)
MATNR | NAME | ORT | DATUM |
ABCX1 | Müller | Berlin | 27.03.73 |
FRSR2 | Gross | Halle | 14.09.70 |
GFDS7 | Meier | Dresden | 02.07.71 |
GOJK4 | Baum | Leipzig | 01.08.73 |
NIKT7 | Bauer | Chemnitz | 27.04.69 |
OUZT9 | Klein | Berlin | 19.11.70 |
TTHC9 | Meier | Dresden | 23.09.71 |
ZTRE5 | Klein | Erfurt | 22.11.70 |
Tabelle 3 IMMA (Immatrikulation von Studenten)
LST | LNAME | LEITER | TITEL | VORGESETZTER | GEHALT |
BS | Betriebssysteme | Hubricht | Dr. tec | Richter | 2.677,45 DM |
DB | Datenbanken | Richter | Prof. Dr. sc. | 4.681,00 DM | |
IS | Informationssysteme | Franke | Diplominformatker | Richter | 3.722,00 DM |
RS | Rechnersysteme | Müller | Hubricht | 2.741,56 DM | |
SWT | Softwaretechnologie | Reinhardt | Dr. sc | Müller | 2.321,89 DM |
Tabelle 4 LS (Bezeichnungen und Leiter der Lehrstühle)
MATNR | LST | DB |
ABCX1 | DB | 1 |
FRSR2 | BS | 4 |
GFDS7 | RS | 3 |
GOJK4 | SWT | 2 |
NIKT7 | IS | 4 |
OUZT9 | IS | 5 |
TTHC9 | DB | 3 |
ZTRE5 | RS | 3 |
Tabelle 5 NOTEN (Noten von Studenten verschiedener Lehrstühle im Fach "Datenbanken")
PRNUMMER | MATNR1 | MATNR2 | VON | BIS | BESTANDEN |
01/GRA-5 | ZTRE5 | OUZT9 | 01.12.96 | 18.12.96 | Nein |
14/INF-4 | NIKT7 | GFDS7 | 23.04.95 | 10.10.96 | Ja |
23/RET-3 | ZTRE5 | GFDS7 | 11.03.95 | 04.04.95 | Ja |
Tabelle 6 PRAKTIKUM
Es wird auf die Beispielrelationen PR01, PRO2, IMMA, LS, NOTEN und PRAKTIKUM zurückgegriffen. Alle Erklärungen beziehen sich auf Standard-SQL und können in RQBE oder ACCESS voneinander abweichen!!!
1. Wann wurde die im Bestand verfügbare DC 10 Gebaut?
|
5 relevante Zieldatensätze |
|
SELECT Prof1.name, Prof1.lehrst;
FROM prof1
2. Welche Flugzeuge sind von der Marke BOING?
|
8 relevante Zieldatensätze |
|
SELECT Noten.matnr, Noten.db;
FROM noten
allgemein: WHERE <search condition> (true oder false)
3. Gesucht sind die Namen aller Studenten, welche aus Halle kommen!
|
1 relevanter Zieldatensatz |
|
SELECT Imma.name;
FROM imma;
WHERE Imma.ort = "Halle"
4. Gesucht sind die Namen aller Studenten, deren Namen mit "M" beginnt!
|
3 relevante Zieldatensätze |
|
SELECT Imma.name;
FROM imma;
WHERE Imma.name LIKE "M%"
5. Gesucht sind die Namen aller Studenten, deren Matrikelnummer eine "1" enthält!
|
1 relevanter Zieldatensatz |
|
SELECT Imma.name, Imma.matnr;
FROM imma;
WHERE Imma.matnr LIKE "%1%"
6. Gesucht sind die Namen aller Studenten, welche vor 1971 geboren wurden!
|
3 relevante Zieldatensätze |
|
Einstellungen beachten!!! |
![]() Ländereinstellungen beachten!!! |
SELECT
DISTINCTROW IMMA.NAME
FROM IMMA
WHERE (((IMMA.DATUM)<#1/1/71#));
7. Gesucht alle Immatrikulations-Angaben zu den Studenten, welche "Meier" heißen!
|
2 relevante Zieldatensätze |
|
SELECT Imma.name, Imma.matnr, Imma.ort, Imma.datum;
FROM imma;
WHERE Imma.name == "Meier"
8. Gesucht sind die Matrikelnummern aller Studenten, deren Leistungen im Fach Datenbanken 1 oder 4 betragen!
|
3 relevante Zieldatensätze |
|
SELECT Noten.matnr;
FROM noten;
WHERE Noten.db = "1";
OR (Noten.db = "4")
9. Gesucht sind die Name und Lehrstuhl-Bezeichnung der Leiter, die über keinen akademischen Grad verfügen!
|
1 relevanter Zieldatensatz |
|
SELECT
DISTINCTROW LS.LEITER, LS.LNAME
FROM LS
WHERE (((LS.TITEL) Is Null));
10. Gesucht sind Matrikelnummer und Lehrstuhl aller Studenten, deren Note im Fach Datenbanken besser als 2 ist!
|
1 relevanter Zieldatensatz |
|
SELECT Imma.matnr, Noten.lst;
FROM imma INNER JOIN noten ;
ON Imma.matnr = Noten.matnr;
WHERE Noten.db < "2"
allgemein: FROM <tabelle_1> JOIN <tabelle_2>
11. Gesucht sind die Matrikelnummern der Studenten mit Namen "Müller", des Lehrstuhles Datenbanken der Einschreibliste 1!
|
1 relevanter Zieldatensatz |
|
SELECT Imma.matnr;
FROM imma INNER JOIN prof1 ;
ON Imma.matnr = Prof1.matnr;
WHERE Prof1.name = "Müller"
12. Gesucht sind die Namen aller Studenten, deren Namen mit "M" beginnt und welche nicht aus Dresden kommen!
|
1 relevanter Zieldatensatz |
|
SELECT Imma.name;
FROM imma;
WHERE Imma.name LIKE "M%";
AND Imma.ort <> "Dresden"
13. Gesucht sind die Namen der Leiter aller Lehrstühle, die einen akademischen Abschluß haben und nicht "Hubricht" heißen!
|
1 relevanter Zieldatensatz |
|
SELECT Ls.leiter;
FROM ls;
WHERE Ls.titel IS NULL;
AND Ls.leiter <> "Hubricht"
14. Gesucht ist der Name der Studenten, die Meier heißen, und aus Dresden oder Halle kommen!
|
3 relevante Zieldatensätze (falsch) |
|
|
3 relevante Zieldatensätze (richtig) |
|
SELECT Imma.name;
FROM imma;
WHERE Imma.name = "Meier";
AND Imma.ort = "Dresden";
OR (Imma.ort = "Halle")
FALSCH!!!
SELECT
DISTINCTROW IMMA.NAME
FROM IMMA
WHERE (IMMA.NAME="Meier") AND
((IMMA.ORT="Dresden") OR (IMMA.ORT="Halle"));
RICHTIG!!!
Die falsche Lösung resultiert aus der Vorrangautomatik der logischen Funktionen
SELECT <projection> FROM join WHERE bezeichner IN ('ausdruck1','ausdruck2');
15. Gesucht sind alle Angaben zu den Studenten, welche "Meier", "Bauer" oder "Groß" heißen!
|
3 relevante Zieldatensätze |
|
SELECT Imma.name;
FROM imma;
WHERE Imma.name IN ("Meier","Bauer","Groß")
SELECT <projection> FROM <join> WHERE <bezeichner> BETWEEN (<ausdruck1> AND <ausdruck2>);
16. Gesucht sind alle Angaben zu den Studenten, welche im Fach Datenbanken mit einer Note zwischen 1 bis 4 abgeschlossen haben!
|
3 relevante Zieldatensätze |
|
SELECT Imma.*, Noten.db;
FROM imma INNER JOIN noten ;
ON Imma.matnr = Noten.matnr;
WHERE Noten.db BETWEEN "1" AND "4"
... ist die Standard-Verbindung über Fremdschlüssel!!!
17. Gesucht sind Namen, der Lehrstuhl sowie die Note im Fach Datenbanken aller Studenten!
|
8 relevante Zieldatensätze |
|
SELECT Imma.name, Imma.ort, Noten.lst, Noten.db;
FROM imma INNER JOIN noten ;
ON Imma.matnr = Noten.matnr
|
5 relevante Zieldatensätze |
|
SELECT Ls.lname, Ls_a.leiter;
FROM ls INNER JOIN ls Ls_a ;
ON Ls.ls = Ls_a.ls
19. Wer ist verdient mehr als sein Chef?
|
1 relevanter Zieldatensatz |
|
SELECT
DISTINCTROW LS.LEITER
FROM LS INNER JOIN LS AS LS_1 ON LS.VORGESETZTER = LS_1.LEITER
WHERE (((LS.GEHALT)>[LS_1].[Gehalt]) AND
((LS_1.LEITER)<>[LS].[Leiter]));
20. Welche Studenten haben miteinander Praktikum gemacht und dieses nicht bestanden?
|
1 relevanter Zieldatenstz |
|
SELECT Projekt.matnr1, Projekt.matnr2;
FROM projekt INNER JOIN imma ;
ON Projekt.matnr1 = Imma.matnr;
WHERE Projekt.bestanden <> .T.
21. Welche Lehrstuhlleiter haben ein höheres Gehalt als Herr Müller?
|
1 relevanter Zieldatenstz |
|
SELECT Projekt.matnr1, Projekt.matnr2;
FROM projekt INNER JOIN imma ;
ON Projekt.matnr1 = Imma.matnr;
WHERE Projekt.bestanden <> .T.
OUTER-Join Natürlicher Verbund
25. Welche Studenten sind in den Immatrikulationslisten PRO1 und PRO2eingetragen?
SELECT
PRO1.MATNR, PRO1.NAME, PRO1.LEHRST
FROM PRO1
UNION SELECT DISTINCTROW PRO2.MATNR, PRO2.NAME, PRO2.LEHRST
FROM PRO2;
8 relevante Zieldatensätze
26. Gesucht ist die Höhe des Beitrages an die Gesellschaft für Informatik" der Lehrstuhlleiter, wenn der Monatsbeitrag 2,7% vom Bruttogehalt beträgt!
SELECT
DISTINCTROW LS.TITEL, LS.LEITER, [LS]![Gehalt]/100*2.7
AS [Beitrag Gesellschaft für Informatik]
FROM LS;
5 relevante Zieldatensätze
HAVING <function>
27. Gesucht ist das Durchschnittsgehalt der Professoren!
SELECT
DISTINCTROW Avg(LS.GEHALT) AS [Das Durchschnittsgehalt]
FROM LS;
1 relevanter Zieldatensatz
28. Gesucht ist das Geburtsdatum des ältesten Studenten!
SELECT
DISTINCTROW Max(IMMA.DATUM) AS [ältester Student]
FROM IMMA;
1 relevanter Zieldatensatz
ORDER BY <feldname>
29. Gesucht ist eine Liste der Lehrstuhlleiter-Gehälter aufsteigend sortiert!
SELECT
DISTINCTROW LS.TITEL, LS.LEITER, LS.GEHALT
FROM LS
ORDER BY LS.GEHALT;
5 relevante Zieldatensätze
30. Gesucht ist eine Liste der Namen von immatrikulierten Studenten, wobei der jüngste zuerst geführt wird!
SELECT
DISTINCTROW IMMA.NAME, IMMA.DATUM
FROM IMMA
ORDER BY IMMA.DATUM DESC;
8 relevante Zieldatensätze
GROUP BY <feldname>
31. Gesucht ist eine Liste der Wohnorte der immatrikulierten Studenten sowie die Angabe der Zahl von Studenten, die aus dem gleichen Ort stammen!
|
1 relevanter Zieldatenstz |
|
SELECT
Count(IMMA.NAME) AS [Anzahl von NAME], IMMA.ORT
FROM IMMA
GROUP BY IMMA.ORT
ORDER BY Count(IMMA.NAME);
8 relevante Zieldatensätze
32. Gesucht ist der Name des Studenten mit der besten Note im Fach Datenbanken!
SELECT
DISTINCTROW Avg(LS.GEHALT) AS [Das Durchschnittsgehalt]
FROM LS;
1 relevanter Zieldatensatz
ALL
ANY
SOME
EXISTS
ALL
ANY
SOME
EXISTS