Übungen zu SQL allgemein

Werbung
SQL
E3A
Übungen Informatik
Gegeben sind folgende Tabellen.
Die roten Linien markieren die Verknüpfungen Primär – Fremdschlüssel.
Achtung: Tabelle zeugnis hat einen zweispaltigen zusammengesetzten Primärschlüssel!!
schule=# select * from schueler;
sid | vorname | nachname
| geb
-----+---------+---------------+-----1 | hans
| meier
| 1998
2 | susi
| müller
| 1999
3 | hans
| krankl
| 1999
4 | pepi
| hickersberger | 1998
(4 Zeilen)
Abbildung 1: Tabelle
schueler
schule=# select * from fach;
fid |
fach
|
stoff
-----+------------+--------------------------------------------------------------------------1 | deutsch
| man lernt rechtschreibung , grammatik und literaturgeschichte
2 | mathe
| grundlagen der geometrie, wahrscheinlichkeitsrechnung und differenzierung
3 | informatik | programmieren und datenbanken
(3 Zeilen)
Abbildung 2: Tabelle fach
schule=# select * from zeugnis;
sid | fid | note
-----+-----+-----1 | 1 | 1
1 | 2 | 3
1 | 3 | 2
2 | 1 | 4
2 | 2 | 4
2 | 3 | 4
3 | 1 | 2
3 | 2 | 2
schule=#
Abbildung 3: Tabelle zeugnis
1. Mit welchem SQL-Befehl wird folgendes Ergebnis erzielt (wieviele 1er, 2er, 3er usw.
jeder hat)
?column?
----------------------hans krankl hat 2 2er
hans krankl hat 1 3er
hans meier hat 1 1er
hans meier hat 1 2er
hans meier hat 1 3er
susi müller hat 3 4er
(6 Zeilen)
2. In welchen Fächern gibt es keine Note 1? Die Ausgabe soll so aussehen:
hier gibts kein sehr gut
------------------------------in mathe gibt es keine 1
in informatik gibt es keine 1
3. Mit welchem SQL-Befehl wird aufgelistet, von welchen Schülern keine Zeugnisse existieren.
------------------------------------------------------------vom schueler pepi hickersberger gibts keinen zeugniseintrag
Übungen
E3A
4. Mit welchem SQL-Befehl wird aufgelistet, welche Fächer auf keinem Zeugnis vertreten sind.
5. Gib alle Schüler aus, die in irgendeinem Fach ein Genügend haben.
vorname | nachname |
fach
----------+----------+-----------susi
| müller
| deutsch
susi
| müller
| mathe
susi
| müller
| informatik
6. Gib die Fächer aus, in denen es eine 1 oder eine 5 gibt.
7. Gib eine Gesamtübersicht aller Schüler mit allen Fächern und Noten in nachfolgender
Formatierung aus.
------------------------------------hans meier hat in deutsch ein 1
hans meier hat in mathe ein 3
hans meier hat in informatik ein 2
susi müller hat in deutsch ein 4
susi müller hat in mathe ein 4
susi müller hat in informatik ein 4
hans krankl hat in deutsch ein 2
hans krankl hat in mathe ein 2
hans krankl hat in informatik ein 3
8. Mit welchem Befehl würde eine Tabelle schulklasse erstellt werden, die folgende
Spalten aufweist:
• eine Spalte für die eindeutige Identifizierung
• eine Spalte für den Namen der Klasse; es sollen nur die Werte E1, E2, E3
zugelassen sein. Verwende dafür einen check-Constraint.
9. Mit welchem Befehl würde eine Tabelle schulklasse erstellt werden, die folgende
Spalten aufweist:
• eine Spalte für die eindeutige Identifizierung
• eine Spalte für den Namen der Klasse; es sollen nur die Werte F1, F2, F3
zugelassen sein. Verwende dafür einen eigenen selbst erzeugten Datentyp.
10. Erkläre folgende Begriffe:
• referentielle Integrität
• Kardinalität
11. Erkläre den Begriff »2. Normalform« und führe ein Beispiel an, bei dem diese nicht
erfüllt ist.
Herunterladen