Könnte mir jemand bitte diese datenbank erstellen und die folgenden SQL abfragen ausprobieren und per code antworten
1. Erstelle Tabellen um Mitarbeiter zu erfassen! Die Tabellen werden fuer eine
Awendung zur Verwaltung von Personal in einer Firma gebraucht.
- Eine >>Abteilung<< der Firma hat einen Namen, der eindeutig sein muss
(z.B. 'Forschung', 'Verkauf', etc..)
- Ein >>Mitarbeiter<< hat einen Namen und eine Matrikelnummer (ein String),
die eindeutig sein muss. Ausserdem noch erfasst ist das Anstellungsjahr
und das Austrittsjahr (default NULL). Das Jahr wird als Ganzzahl (z.B.
2016) erfasst. Stelle sicher, dass nur gueltige Jahreszahlen eingetragen werden
koennen (also z.B. Ganzzahlen groesser als 2000) und dass das Austrittsjahr
(falls erfasst) groesser oder gleich gross wie das Anstellungsjahr ist.
- Die Zwischentabelle >>Anstellung<< verknuepft Mitarbeiter und Abteilungen:
jeder Mitarbeiter ist einer oder mehrerer Abteilungen zugeordnet und jede
Abteilung hat einen oder mehrere Mitarbeiter.
Vergiss nicht, fuer jede Tabelle Primarschluessel und wo noetig auch Fremd-
schluessel und Constraints zu erstellen!
Alle Statements wie zB Create und Alter angeben
2. SQL Abfragen
a) Erstelle eine Liste der Mitarbeiter, die noch in der Firma arbeiten
(also Austrittsjahr IS NULL). Die Liste soll den Namen des Mitarbeiters,
sein Eintrittsjahr und einen String mit allen Namen der Abteilungen enthalten,
in der er oder sie taetig ist (diesen String erstellst Du am einfachsten
mit string_agg(abteilung.name, ', ')).
b) Liste alle Mitarbeiter, die vor 1950 in der Firma gearbeitet haben.
c) Liste alle Mitarbeiter der Abteilung 'Forschung', die bereits seit mehr
als 10 Jahren dort arbeiten.
1. Erstelle Tabellen um Mitarbeiter zu erfassen! Die Tabellen werden fuer eine
Awendung zur Verwaltung von Personal in einer Firma gebraucht.
- Eine >>Abteilung<< der Firma hat einen Namen, der eindeutig sein muss
(z.B. 'Forschung', 'Verkauf', etc..)
- Ein >>Mitarbeiter<< hat einen Namen und eine Matrikelnummer (ein String),
die eindeutig sein muss. Ausserdem noch erfasst ist das Anstellungsjahr
und das Austrittsjahr (default NULL). Das Jahr wird als Ganzzahl (z.B.
2016) erfasst. Stelle sicher, dass nur gueltige Jahreszahlen eingetragen werden
koennen (also z.B. Ganzzahlen groesser als 2000) und dass das Austrittsjahr
(falls erfasst) groesser oder gleich gross wie das Anstellungsjahr ist.
- Die Zwischentabelle >>Anstellung<< verknuepft Mitarbeiter und Abteilungen:
jeder Mitarbeiter ist einer oder mehrerer Abteilungen zugeordnet und jede
Abteilung hat einen oder mehrere Mitarbeiter.
Vergiss nicht, fuer jede Tabelle Primarschluessel und wo noetig auch Fremd-
schluessel und Constraints zu erstellen!
Alle Statements wie zB Create und Alter angeben
2. SQL Abfragen
a) Erstelle eine Liste der Mitarbeiter, die noch in der Firma arbeiten
(also Austrittsjahr IS NULL). Die Liste soll den Namen des Mitarbeiters,
sein Eintrittsjahr und einen String mit allen Namen der Abteilungen enthalten,
in der er oder sie taetig ist (diesen String erstellst Du am einfachsten
mit string_agg(abteilung.name, ', ')).
b) Liste alle Mitarbeiter, die vor 1950 in der Firma gearbeitet haben.
c) Liste alle Mitarbeiter der Abteilung 'Forschung', die bereits seit mehr
als 10 Jahren dort arbeiten.
Zuletzt bearbeitet: