solved s03

This commit is contained in:
navid.sassan 2020-12-07 15:40:49 +01:00
parent d84e61e61f
commit 80d97079b0

View File

@ -1,49 +1,56 @@
-- ----------------------------------------------------------------------------
-- DB: Bewertetes Praktikum 3
--
--
-- Name 1:
-- Name 2:
-- Name 3:
-- Name 4:
--
-- ----------------------------------------------------------------------------
-- ----------------------------------------------------------------------------
-- Aufgabe 1
-- ----------------------------------------------------------------------------
-- ----------------------------------------------------------------------------
-- Aufgabe 2
-- ----------------------------------------------------------------------------
-- ----------------------------------------------------------------------------
-- Aufgabe 3
-- ----------------------------------------------------------------------------
-- ----------------------------------------------------------------------------
-- Aufgabe 4
-- ----------------------------------------------------------------------------
-- ----------------------------------------------------------------------------
-- Aufgabe 5
-- ----------------------------------------------------------------------------
-- ----------------------------------------------------------------------------
-- Aufgabe 6
-- ----------------------------------------------------------------------------
-- ----------------------------------------------------------------------------
-- DB: Bewertetes Praktikum 3
--
--
-- Name 1: Navid Sassan
--
-- ----------------------------------------------------------------------------
-- ----------------------------------------------------------------------------
-- Aufgabe 1
-- ----------------------------------------------------------------------------
CREATE TABLE `Teilnehmer` (
SNr INTEGER NOT NULL,
MNr INTEGER NOT NULL,
IstLeiter VARCHAR(4) NOT NULL,
CONSTRAINT FK_Teilnehmer_MNr FOREIGN KEY (MNr)
REFERENCES Mitarbeiter(MNr),
CONSTRAINT FK_Teilnehmer_SNr FOREIGN KEY (SNr)
REFERENCES Sitzung(SNr)
);
-- ----------------------------------------------------------------------------
-- Aufgabe 2
-- ----------------------------------------------------------------------------
SELECT * FROM `Sitzung` ORDER BY `Datum` DESC LIMIT 1;
-- ----------------------------------------------------------------------------
-- Aufgabe 3
-- ----------------------------------------------------------------------------
SELECT SNr FROM zhaw.Sitzung AS x WHERE NOT EXISTS (SELECT 1 FROM Teilnehmer AS y WHERE x.SNr = y.SNr) AND EXISTS (SELECT 1 FROM Sitzungsort AS z WHERE x.SNr = z.SNr);
-- ----------------------------------------------------------------------------
-- Aufgabe 4
-- ----------------------------------------------------------------------------
SELECT DISTINCT `Bezeichnung` FROM `Sitzung` NATURAL JOIN Sitzungsort WHERE ZNr=19 AND EXISTS (SELECT 1 FROM Teilnehmer NATURAL JOIN Mitarbeiter WHERE HausNR != (SELECT HausNR FROM Sitzungszimmer where ZNr=19));
-- Hier wird DISTINCT benötgt, da mehrere Sitzungen die gleiche Bezeichnung haben können, das Wort "verschieden" in der Aufgabenstellung aber bedeutet, dass keine Duplikate angezeigt werden sollen.
-- ----------------------------------------------------------------------------
-- Aufgabe 5
-- ----------------------------------------------------------------------------
SELECT Bezeichnung,AVG(ZeitBis - ZeitVon) FROM Sitzung WHERE YEAR(Datum) = 2020 GROUP BY Bezeichnung;
-- ----------------------------------------------------------------------------
-- Aufgabe 6
-- ----------------------------------------------------------------------------