FYI: Das ist ein neues Projekt. Hier wird allerhand nur halb fertig sein und nicht richtig funktionieren.

Link zur DB-Verwaltung: Klack

Zugangsdaten:
User: hq_ro
Pass:
l5zE__BMTYzQ4.amlcoQ


Hier kommen die Aufgaben, die Sie in der Sitzung vom 02.07. selbst generiert haben - keine Gewähr für gar nichts!!!

test.txt

ER-Diagramm: (Großbild neues Fenster)

Übungen

Alle Übungen finden Sie in der Materialsammlung (dort auch alle zusätzlichen Dateien wie Bilder, Klassendiagramme oder HTML-Vorlagen!).

Die aktuelle Übung können Sie hier als txt-File herunterladen.


***** Maulwurfstadt, Select *****

Aufgabenblock 1:
Einfache SELECT-Befehle über EINE Tabelle




(1) * vs. Attribute; Alias; Sortierung

MySQL-Code
select * from personen p select p.vorname from personen p select p.nachname, p.geburtsdatum from personen p select * from personen p order by p.nachname, p.vorname  

1a) Lassen Sie sich eine Liste aller Personen ausgeben, und zwar nur Nachname, Vorname

1b) Lassen Sie sich eine Liste aller Personen ausgeben: Nachname, Kontostand, Familienstand - die mit dem niedrigsten Kontostand zuerst.

1c) Lassen Sie sich eine Liste aller Straftaten ausgeben, sortiert nach Strafmaß absteigend.

1d) Lassen Sie sich eine Liste aller Betriebe ausgeben. Sortieren Sie nach Name des Betriebs.

1e) Lassen Sie sich nur die Namen aller Betriebe ausgeben, und zwar in der Reihenfolge ihrer ID.




(2) Vertikale Einschränkung mit where; LIKE

MySQL-Code
SELECT * FROM personen p WHERE p.nachname = 'Schmidt' SELECT p.nachname, p.vorname from personen p WHERE p.nachname LIKE 'Schmi%' ORDER BY p.nachname SELECT * FROM personen p where monatlichesEinkommen > 10000  

2a) Alle Personen mit blauen Augen.

2b) Alle Personen (nur Nachname, Geburtsdatum und monatliches Einkommen), die ältesten zuerst.

2c) Alle Personen, deren Kontostand im negativen Bereich liegt; die mit den niedrigsten Kontoständen sollen zuerst angezeigt werden.

2d) Alle Meyer, Maier und Meier, die vor 1990 geboren sind (Lösung: Es müssen 10 Ergebnisse sein.)

2e) Die 10 ältesten Personen. Am einfachsten verwenden Sie dazu LIMIT (bspw. LIMIT 10) in Verbindung mit einer sinnvollen Sortierung.

2f) Die 10 jüngsten Personen. Am einfachsten verwenden Sie dazu LIMIT (bspw. LIMIT 10) in Verbindung mit einer sinnvollen Sortierung.

2g) Alle Straftaten, die mit mehr als 5 Jahren geahndet werden (so sortiert, dass die mit den längsten Strafen zuerst angezeigt werden).

2h) Alle Krankheiten, die mit dem Buchstaben A beginnen.




(3) Verknüpfungen mit AND, OR
MySQL-Code
select * from personen p where p.augenfarbe = 'blau' OR p.augenfarbe = 'grün' select * from personen p where p.geschlecht = 'm' AND p.haarfarbe = 'blond' select * from personen p where p.geburtsdatum < '1930-01-01' AND p.kontostand < 0 ORDER BY geburtsdatum  

3a) Alle Personen mit blauen Augen und schwarzen Haaren. Nur Vorname, Nachname, Haarfarbe und Augenfarbe ausgeben.

3b) Vorname, Nachname, Straße und Hausnummer von allen Personen, die in der Hauptstraße 8 wohnen.

3c) Alle Personen, die einen negativen Kontostand haben und weniger als 2000 Euro verdienen.

3d) Alle ledigen Männer.

3e) Alle ledigen verwitweten Männer, die jünger sind als 40 und blaue Augen haben.

3f) Name und Kontostand aller ledigen Männer mit grünen Augen; der höchste Kontostand soll am Anfang der Ergebnisliste stehen.

3g) Alle Frauen aus der Hauptstraße 8 und Hauptstraße 2, sortiert nach Nachname.

3h) Alle Personen aus Ort Nr. 1, deren Vor- und Nachname mit M beginnt.

3i) Alle Personen, deren Vorname mindestens 3 A beinhaltet. (Lösung: 55 Ergebnisse)

3j) Alle Grauhaarigen mit braunen oder grünen Augen, die nach 1940 geboren sind. Geben Sie nur Name, Augenfarbe und Geburtsdatum aus, sortiert nach Augenfarbe (absteigend), dann nach Alter (aufsteigend).