Moin,
ich mache zur Zeit die 5. Übung im Fach Datenbanken. Da die Übungen Vorleistungen sind und die Bewertung extrem Übel ist, wäre es nett, wenn jemand meine Lösungen mal anschauen und mich auf eventuelle Fehler hinweisen könnte. Bereits minimalste Fehler führen zu extremem Punktabzug. Um die Klausur mitzuschreiben, brauche ich bei den nächsten Übungen mind. 80% der Punkte.
Zur Aufgabe:

Das benötigte Schema aus Übung 4:

Meine Lösungen:
1a)
Pi[Prüfer] (Sigma[((Prüfung.Matrikel_Nr = Student.Matrikel_Nr) ^ (Student.Fachbereich_Nr = Fachbereich.Fachbereich_Nr) ^ (F_Name = 'Umwelt und Nachhaltigkeit')] (Prüfung x Student x Fachbereich))
1b)
edit: In SQL hätte ich ne Lösung, aber keine Ahnung wie man das in relationale Algebra übersetzt:
SELECT Hausmeister, COUNT (Hausmeister) AS NumOccurences
FROM Gebäude
GROUP BY Hausmeister
HAVING (COUNT (Hausmeister) > 1);
2a)
SELECT Prodekan, F_Name
FROM Fachbereich, Prüfung, Student
WHERE ((Prodekan = Prüfer) AND (Prüfung.Matrikel_Nr = Student.Matrikel_Nr) AND (Student.Fachbereich_Nr <> Fachbereich.Fachbereich_Nr));
Sollte soweit stimmen, zumindest spuckt sie das gewünschte Ergebnis aus, wenn ich es in Access teste.
2b)
SELECT Prüfer
FROM Prüfung
EXCEPT
SELECT Prüfer
FROM Prüfung
WHERE (Note = 1);
Die funktioniert in Access leider nicht, angeblich ist irgendwas in der FROM Anweisung falsch, kann leider nicht nachvollziehen wieso.
