Übungen zum Relationenmodell

Übung 1

Relation Restaurant
rnrRNameAdrHaube
1McDonaldsAmstetten0
2McDonaldsYbbs0
3HollywoodAmstetten1
4Casa VeneziaAmstetten2
5grill.BarAmstetten2
6SchinakelGrein1


Relation Speise
rnrSNamePreis
1Hamburger1
2Hamburger1
2Cheeseburger1,30
3Hawaii8,6
4Hawaii9
5Salat5
1Salat1,80



Abfragen in relationaler Algebra:

a) alle Restaurants, die in Amstetten zu finden sind

b) alle Restaurants von Amstetten mit mindestens 2 Hauben

c) Namen aller Restaurants

d) Namen aller Restaurants die in Amstetten zu finden sind

e) alle Restaurants, die auch Speisen anbieten

f) Namen der Restaurants, die Speisen anbieten

g) Namen aller Restaurants, die einen Salat anbieten

h) Namen und Preise aller Speisen samt Name des Restaurants, von Restaurants, die einen Salat anbieten

Hier nochmals die Relationen:

Lösung Übung 1 a)

Lösung Übung 1 b)

Lösung Übung 1 c)

Lösung Übung 1 d)

Lösung Übung 1 e)

Lösung Übung 1 f)

Lösung Übung 1 g)

Lösung Übung 1 h)

Übung 2

Gegeben sind einige Relationen und Abfragen. Formulieren Sie die Abfragen mittels Relationaler Algebra und berechnen Sie auch das Ergebnis der Abfragen.

Die Relation Rechner beschreibt die Rechner eines Institutes. RNr ist eine eindeutige Bezeichnung für den Rechner, StudAss ist der eindeutige Name des Studienassistenten, der den Rechner (und die darauf installierten Programme) wartet, Speicher gibt die Größe der Festplatte des Rechners an und Leist ist ein Maß für die Leistungsfähigkeit des Rechners, wobei 1 die schlechteste und 5 die beste Leistung ist.

Relation Rechner
_RNr_StudAssLeistSpeicher
R1Huber1100
R2Brunner380
R3Brunner3400
R4Vogt2120
R5Huber2500



In Programm sind die Programme, die das Institut besitzt gespeichert. PNr ist eine eindeutige Nummer des Programms, PName ist sein Name, Bereich gibt an, um was für eine Art von Programm es sich dabei handelt und MinLeist bezeichnet die Leistungsfähigkeit, die ein Rechner mindestens besitzen muss, damit das Programm auf ihm laufen kann. Hat ein Programm also die MinLeist 4, so kann man ihn nur in einem Rechner mit Leist 4 oder 5 einsetzen, nicht aber einem mit Leist 1,2 oder 3.

Relation Programm
_PNr_PNameMinLeistBereich
P1DrawIt1Grafik
P2AskIt3Datenbank
P3WriteIt1Text
P4ConnectIt2Internet
P5PaintIt2Grafik
P6StoreIt3Datenbank



Die Relation Assistent beschreibt die Assistenten, die an dem Institut arbeiten. (Diese sind von den Studienassistenten verschieden) Dabei ist ANr eine eindeutige Nummer für den Assistenten, AName ist dessen Name, StudAss ist der eindeutige Name des Studienassistenten, der den Assistenten bei seiner Tätigkeit unterstützt. Gehalt bezeichnet die Gehaltsstufe des Assistenten.

Relation Assistent
_ANr_ANameStudAssGehalt
A1NovakBrunner3
A2DvorakVogt1
A3HusakVogt1
A4PfeifferBrunner2



In der Relation Installation ist verzeichnet, welche Programme auf welchen Rechnern installiert sind. RNr und PNr geben den entsprechenden Rechner und das Programm an, Platz gibt die Größe der Installation auf der Festplatte an und Code ist ein Code, den nur die Studienassistenten verstehen.

Relation Installation
_RNr__PNr_PlatzCode
R1P1500X
R1P3300z
R2P6300X
R2P2200pp
R3P1400c
R3P2100tt
R3P3500c
R3P4200pp
R3P5200z
R3P6100t
R4P51000T
R5P1200p
R5P5100ccc



In der Relation Benutzung wird vermerkt, wie lange die Assistenten die verschiedenen Programme benutzen. ANr verweist auf den Assistenten, PNr auf das Programm und Stund gibt an wieviele Stunden am Tag das Programm vom Assistenten pro Tag höchstens benötigt wird.

Relation Benutzung
_ANr__PNr_Stund
A1P15
A1P23
A2P16
A2P42
A2P55
A3P17
A3P33
A4P11
A4P44



Abfragen:

a) Geben Sie den Namen der Assistenten aus, die ein Programm möglicherweise länger als 5 Stunden benutzen.


b) Wie heißen die Programme, die von Huber gewartet werden?


c) Wie heißen die Programme, die von allen Assistenten benutzt werden?


d) Auf welchem Rechner sind dieselben Programme installiert, wie auf dem Rechner R1?


e) Von welchen Studienassistenten wird das Programm WriteIt nicht gewartet?


f) Welche Paare von Assistenten werden vom gleichem Studienassistenten betreut? (Dabei soll jedes Paar nur einmal ausgegeben werden)


g) Welche Studienassistenten betreuen sowohl Assistenten, als auch Rechner?


h) Welche Paare von Rechner haben dieselbe RLeistung?


i) Welche Programme (gesucht sind die Namen) sind auf allen Rechnern installiert?


j) Welche Programme laufen auf einem Rechner, der genaue die minimale Leistungsfähigkeit für das Programm besitzt? (Gesucht sind die Paare aus Rechnernummer und Programmnummer)

Hier noch einmal alle Relationen auf einen Blick:

Übungen zum Relationenmodell

Übung 1

Relation Restaurant
rnrRNameAdrHaube
1McDonaldsAmstetten0
2McDonaldsYbbs0
3HollywoodAmstetten1
4Casa VeneziaAmstetten2
5grill.BarAmstetten2
6SchinakelGrein1


Relation Speise
rnrSNamePreis
1Hamburger1
2Hamburger1
2Cheeseburger1,30
3Hawaii8,6
4Hawaii9
5Salat5
1Salat1,80



Abfragen in relationaler Algebra:

a) alle Restaurants, die in Amstetten zu finden sind

b) alle Restaurants von Amstetten mit mindestens 2 Hauben

c) Namen aller Restaurants

d) Namen aller Restaurants die in Amstetten zu finden sind

e) alle Restaurants, die auch Speisen anbieten

f) Namen der Restaurants, die Speisen anbieten

g) Namen aller Restaurants, die einen Salat anbieten

h) Namen und Preise aller Speisen samt Name des Restaurants, von Restaurants, die einen Salat anbieten

Hier nochmals die Relationen:

Lösung Übung 1 a)

Lösung Übung 1 b)

Lösung Übung 1 c)

Lösung Übung 1 d)

Lösung Übung 1 e)

Lösung Übung 1 f)

Lösung Übung 1 g)

Lösung Übung 1 h)

Übung 2

Gegeben sind einige Relationen und Abfragen. Formulieren Sie die Abfragen mittels Relationaler Algebra und berechnen Sie auch das Ergebnis der Abfragen.

Die Relation Rechner beschreibt die Rechner eines Institutes. RNr ist eine eindeutige Bezeichnung für den Rechner, StudAss ist der eindeutige Name des Studienassistenten, der den Rechner (und die darauf installierten Programme) wartet, Speicher gibt die Größe der Festplatte des Rechners an und Leist ist ein Maß für die Leistungsfähigkeit des Rechners, wobei 1 die schlechteste und 5 die beste Leistung ist.

Relation Rechner
_RNr_StudAssLeistSpeicher
R1Huber1100
R2Brunner380
R3Brunner3400
R4Vogt2120
R5Huber2500



In Programm sind die Programme, die das Institut besitzt gespeichert. PNr ist eine eindeutige Nummer des Programms, PName ist sein Name, Bereich gibt an, um was für eine Art von Programm es sich dabei handelt und MinLeist bezeichnet die Leistungsfähigkeit, die ein Rechner mindestens besitzen muss, damit das Programm auf ihm laufen kann. Hat ein Programm also die MinLeist 4, so kann man ihn nur in einem Rechner mit Leist 4 oder 5 einsetzen, nicht aber einem mit Leist 1,2 oder 3.

Relation Programm
_PNr_PNameMinLeistBereich
P1DrawIt1Grafik
P2AskIt3Datenbank
P3WriteIt1Text
P4ConnectIt2Internet
P5PaintIt2Grafik
P6StoreIt3Datenbank



Die Relation Assistent beschreibt die Assistenten, die an dem Institut arbeiten. (Diese sind von den Studienassistenten verschieden) Dabei ist ANr eine eindeutige Nummer für den Assistenten, AName ist dessen Name, StudAss ist der eindeutige Name des Studienassistenten, der den Assistenten bei seiner Tätigkeit unterstützt. Gehalt bezeichnet die Gehaltsstufe des Assistenten.

Relation Assistent
_ANr_ANameStudAssGehalt
A1NovakBrunner3
A2DvorakVogt1
A3HusakVogt1
A4PfeifferBrunner2



In der Relation Installation ist verzeichnet, welche Programme auf welchen Rechnern installiert sind. RNr und PNr geben den entsprechenden Rechner und das Programm an, Platz gibt die Größe der Installation auf der Festplatte an und Code ist ein Code, den nur die Studienassistenten verstehen.

Relation Installation
_RNr__PNr_PlatzCode
R1P1500X
R1P3300z
R2P6300X
R2P2200pp
R3P1400c
R3P2100tt
R3P3500c
R3P4200pp
R3P5200z
R3P6100t
R4P51000T
R5P1200p
R5P5100ccc



In der Relation Benutzung wird vermerkt, wie lange die Assistenten die verschiedenen Programme benutzen. ANr verweist auf den Assistenten, PNr auf das Programm und Stund gibt an wieviele Stunden am Tag das Programm vom Assistenten pro Tag höchstens benötigt wird.

Relation Benutzung
_ANr__PNr_Stund
A1P15
A1P23
A2P16
A2P42
A2P55
A3P17
A3P33
A4P11
A4P44



Abfragen:

a) Geben Sie den Namen der Assistenten aus, die ein Programm möglicherweise länger als 5 Stunden benutzen.


b) Wie heißen die Programme, die von Huber gewartet werden?


c) Wie heißen die Programme, die von allen Assistenten benutzt werden?


d) Auf welchem Rechner sind dieselben Programme installiert, wie auf dem Rechner R1?


e) Von welchen Studienassistenten wird das Programm WriteIt nicht gewartet?


f) Welche Paare von Assistenten werden vom gleichem Studienassistenten betreut? (Dabei soll jedes Paar nur einmal ausgegeben werden)


g) Welche Studienassistenten betreuen sowohl Assistenten, als auch Rechner?


h) Welche Paare von Rechner haben dieselbe RLeistung?


i) Welche Programme (gesucht sind die Namen) sind auf allen Rechnern installiert?


j) Welche Programme laufen auf einem Rechner, der genaue die minimale Leistungsfähigkeit für das Programm besitzt? (Gesucht sind die Paare aus Rechnernummer und Programmnummer)

Hier noch einmal alle Relationen auf einen Blick:

Lösung Übung 2a)

Lösung Übung 2b)

Lösung Übung 2c)

Lösung Übung 2d)

Lösung Übung 2e)

Lösung Übung 2f)

Lösung Übung 2g)

Lösung Übung 2h)

Lösung Übung 2i)

Lösung Übung 2j)