Uebung 2_student

Werbung
Name:
Matrikelnummer:
Informatik für Ökonomen II – Übung 2
Ausgabe:
Abgabe:
Donnerstag, den 16. Oktober 2008
Donnerstag, den 23. Oktober 2008
Einleitung
Das Ziel dieser Übung ist es, SQL zu üben und zu verstehen. Als Grundlage dient
die Beispieldatenbank, die auf der letzten Seite dieser Übung abgebildet ist und
Sie bereits in Übung 0 installiert haben. Mit MySQL können Sie überprüfen, ob
Ihre Anfragen die gewünschten Ergebnisse liefern.
Bitte verwenden Sie keinen Bleistift und keine rotfarbigen Schreibutensilien.
Gruppenabgaben werden nicht akzeptiert.
Aufgabe 1: Einfache Anfragen
(15 Punkte)
Schreiben Sie SQL-Statements, welche die folgenden Daten ermitteln bzw.
Fragen beantworten und geben Sie die SQL-Statements sowie deren Resultate
an.
a) Die Namen aller Projekte.
b) Welche Angestellten verdienen weniger als 45000? Geben Sie die AHVNummern dieser Angestellten an.
c) Vor- und Nachnamen der weiblichen Angestellten aus der Abteilung 8.
Aufgabe 2: Anfragen verstehen
(15 Punkte)
Beschreiben Sie in eigenen Worten, was mit den folgenden SQL-Statements
abgefragt werden soll.
Maximal 1 Satz!
a)
SELECT ang.NName
FROM Angestellter ang, Abt_Ort ao
WHERE ang.Abt = ao.ANummer AND ao.AOrt = 'Baden';
b)
(SELECT AHV FROM Angestellter)
minus
(SELECT Ang FROM Angehoeriger)
c)
SELECT AHV, VName, NName
FROM Angestellter
WHERE Abt = 1
Order by AHV desc;
Seite 1 von 4
Name:
Matrikelnummer:
Aufgabe 3: Komplexere Anfragen (54 Punkte)
Schreiben Sie SQL-Statements, welche die folgenden Daten ermitteln bzw.
Fragen beantworten und geben Sie die SQL-Statements sowie deren Resultate
an.
a) Welche Angestellten wohnen entweder in Zürich oder in Dübendorf? Nennen
Sie den VNamen, den NNamen und die Adresse dieser Angestellten.
b) Welche Angestellten haben eine Tochter? Nennen Sie den Nachnamen und das
Geburtsdatum dieser Angestellten.
c) Wie viele Stunden - benannt als ‚AufwandDLZ’ - wurden bisher insgesamt
schon am Projekt mit dem Namen ‚DienstleistungZ’ gearbeitet?
d) Welche Angestellten arbeiten in Kloten? Nennen Sie die Abteilungsnummer
und den Nachnamen dieser Angestellten. Sortieren Sie die Ergebnisse zuerst
aufsteigend nach Abteilungsnummern und dann absteigend nach Nachnamen.
e) Gesucht sind die Abteilungen, in denen mehr als eine Frau arbeitet. Geben Sie
die Abteilungsnummer, den Abteilungsnamen sowie die Anzahl der weiblichen
Angestellten (als WA) dieser Abteilung an. Sortieren Sie die Ergebnistupel
absteigend nach der Anzahl der weiblichen Angestellten.
Aufgabe 4: Fragen
(16 Punkte)
Kreuzen Sie Zutreffendes an. Zu jeder Frage können mehrere Antworten richtig
sein.
Bitte beachten Sie, dass Ihnen für jedes falsch gesetzte Kreuz gleich viele Punkte
abgezogen werden wie Sie für eine korrekte Ankreuzung erhalten. Negative
Punktzahlen ergeben null Punkte für die betreffende Frage.
Frage 1
(4 Punkte)
Kreuzen Sie an, welche Aussagen richtig und welche falsch sind.
Der UNION-Operator eliminiert Duplikat-Tupel.
UNION ALL lässt Duplikat-Tupel zu.
UNION ist ein unärer Operator.
Die Attribute der mit UNION verbundenen SQLAnfragen können unterschiedlichen Datentyps sein,
solange ihre Namen identisch sind.
richtig falsch








Seite 2 von 4
Name:
Frage 2
Matrikelnummer:
(4 Punkte)
Gegeben sei folgende SQL-Anfrage:
SELECT Abt, AName, count(AHV) as Mitarbeiter,
sum(Salaer) as Salaer_Total
FROM
Angestellter, Abteilung
WHERE Abt=ANummer
GROUP BY ...
Welche Attribute müssen in der GROUP BY-Klausel angegeben werden.
Kreuzen Sie an, welche Antworten richtig und welche falsch sind.
Abt
AName
AHV
Salaer
Frage 3
richtig falsch








(4 Punkte)
Was bedeutet der Stern in der SELECT-Klausel?
Kreuzen Sie an, welche Antworten richtig und welche falsch sind.
Alle Attribute der spezifizierten Relation werden ausgewählt.
Keine Attribute der spezifizierten Relation werden
ausgewählt.
Nur die Schlüsselattribute der spezifizierten Relation werden
ausgewählt.
Alle Attribute ausser den Schlüsselattributen der
spezifizierten Relation werden ausgewählt.
Frage 4
richtig falsch








(4 Punkte)
Welche SQL-Schlüsselwörter bewirken eine ansteigende Sortierung nach
Attribut A?
Kreuzen Sie an, welche Antworten richtig und welche falsch sind.
Order by A
Order by A desc
Having A asc
Order by A asc
richtig




falsch




Seite 3 von 4
Name:
Matrikelnummer:
Beispieldate nbank
Ang es tell ter
AHV
1211
1322
1930
2031
2231
2533
2592
2721
2938
4077
4655
5908
6608
6736
6799
7213
7639
8567
8606
8635
8951
9260
9970
VName
Susanne
Hans
Peter
Fritz
Sepp
Franziska
Melanie
Ruth
Giuseppe
Armando
Michael
Kurt
Mirella
Ruedi
Sara
Julia
Sonja
Nadine
Andreas
Beate
Marc
Boris
Fabian
NName
Geist
Mueller
Sachs
Kuster
Meier
Haus
Patz
Petschen
Wagner
Verdi
Schneider
Huesli
Freni
Becker
Ruf
Lang
Maradona
Gut
Fuchs
Tell
Stocker
Frisch
Graber
Arb ei tet_ An
Proje kt Ang Stunden
1 2938
20
1 5908
32
1 6799
45
2 2938
20
2 5908
7
2 7213
10
2 8635
10
3 6799
12
3 7213
45
3 7639
43
3 8635
12
6 2938
24
6 5908
35
6 6799
42
7 2938
26
7 5908
4
7 7213
12
7 8635
14
8 6799
6
8 7213
43
8 7639
43
8 8635
15
10 4077
35
10 6736
10
10 8635
10
10 9970
23
20 6608
0
20 8606
23
20 8635
10
20 8951
18
20 9260
15
30 4077
5
30 4655
20
30 6736
30
30 8567
24
30 9260
20
Gebt ag
1976-05-30
1972-01-02
1982-12-17
1956-03-23
1966-03-07
1976-11-23
1974-11-30
1963-12-11
1979-03-04
1972-08-19
1978-06-11
1973-12-30
1968-06-22
1979-12-24
1984-12-02
1980-01-30
1974-11-11
1976-08-28
1972-11-07
1970-01-14
1970-03-17
1981-06-03
1981-04-23
Adress e
Zuerich
Muenchwilen
Basel
Thalwil
Bern
Bern
Altstaetten
Bern
Zuerich
Duebendorf
Thalwil
Zuerich
Duebendorf
Wallisellen
Zug
Zug
Bern
Dietikon
Kloten
Kuessnacht
Wallisellen
Zug
Zuerich
Ges chl ec ht
w
m
m
m
m
m
w
m
m
m
m
m
w
m
w
w
w
w
m
w
m
m
m
Salae r Vor ges Abt
55000
9260
4
63000
6608
1
46000
6608
1
68000
6608
7
65000
6608
6
65000
6608
8
55000
2231
6
45000
2231
6
45000
8635
5
45000
9260
4
35000
6608
4
50000
8635
5
75000
0
1
45000
9260
4
25000
8635
5
40000
8635
5
48000
8635
5
30000
6608
4
65000
6608
1
60000
6608
5
68000
6608
1
33000
6608
4
32000
9260
4
Ab t _Or t
Proje kt
PNumme r
1
2
3
6
7
8
10
20
30
PName
ProduktX
ProduktY
ProduktZ
DienstleistungX
DienstleistungY
DienstleistungZ
Informatik
Reorganisation
Soziales
POrt
Abt
Zug
5
Baden
5
Kloten
5
Genf
6
Zuerich
6
Lugano
6
Zuerich
4
Kloten
1
Zuerich
4
ANumme r
1
4
5
5
5
6
6
6
7
8
AOrt
Kloten
Zuerich
Baden
Kloten
Zug
Baden
Kloten
Zug
Wallisellen
Zuerich
Ab teil ung
ANumme r
1
4
5
6
7
8
AName
Leite r
Management
6608
Verwaltung
9260
Forschung
8635
Produktion
8635
IT
8635
HR
8635
Anfdatum
2003-06-19
2004-01-01
2001-05-22
2001-07-12
2002-07-02
2003-11-13
A ng ehoer ig er
Name
Alice
Alice
Beat
Franz
Greti
Lisa
Max
Natalia
Peter
Ralph
Ueli
Ang
5908
8635
5908
2592
9260
5908
9260
2592
8635
2592
8635
Ges chl ec ht
w
w
m
m
w
w
m
w
m
m
m
Gebt ag
2005-12-31
2001-04-05
2002-01-01
1968-12-13
1983-02-28
1977-05-05
2002-01-18
2000-12-13
2004-10-25
1998-10-31
1968-05-03
Ver wgrad
Tochter
Tochter
Sohn
Ehemann
Ehefrau
Ehefrau
Sohn
Tochter
Sohn
Sohn
Ehemann
Seite 4 von 4
Herunterladen