relationale Algebra < Datenbanken < Praktische Inform. < Hochschule < Informatik < Vorhilfe
|
Aufgabe | Gegeben sei die Datenbank (schema)
[mm] Student($\underline{MatNo}$, [/mm] SName)
[mm] Course($\underline{CNo}$, [/mm] CName)
[mm] Took($\underline{CNo -> Course, MatNo -> Student}$, [/mm] Score)
Wobei das unterstrichene die Schlüssel darstellen.
Die Frage lautet ob diese beiden Abfragen
$$
[mm] \begin{array}{l}{\text { a) } y \text { count }(*) \rightarrow \text { cnt }(\pi \text { CNo (Course)) }} \\ {\text { b) } y \text { count }(*) \rightarrow \text { cnt }(\pi \text { CNo, CName (Course)) }}\end{array}
[/mm]
$$
Äquivalent für Mengen und oder Multimengen sind. |
Meine Idee wäre, dass diese für Mengen nicht äquivalent sind und für Multimengen auch nicht denn
Es soll bei a) eine Projektion auf dem Atribut CNo durchgeführt und die Anzahl der Tupel gezählt werden. Also
R:
A B C
1 2 3
4 5 6
1 3 8
R[A]:
A
1
4
Es werden also doppelte Elemente gestrichen. die gilt nun für a)
Nehmen wir nun b)
R:
A B C
1 2 3
4 5 6
1 3 8
R[A,B]:
A B
1 2
4 5
1 3
Hier gibt es also mehr Tupel, denn es wird nur geschaut ob beide Attributewerte gleich sind. Somit würde ich sagen, dass a und b bzgl der Mengen nicht äquivalent sind, denn siehe das Beispiel (von WIKI).
Wie schaut dies aber bei Multimengen aus? Naja eigentlich genauso, denn bei der Projektion werden doppelte Tupel gelöscht,also wäre meine Antwort, dass sie garnicht äquivalent sind.
Kann mir da Jemand helfen? P.S. ich beschäftige mich privat mir diesem Thema, da ich nächstes Jahr, nach dem Abitur Informatik studieren möchte und mich das Thema Datenbanken interessiert, aber diese eine Aufgabe aus einem Lehrbuch macht mich fertig, es gibt dazu leider keine Musterlösung, deswegen erhoffe ich mir hier etwas Input:)
Liebe Grüße
Jule
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 16:20 Fr 21.06.2019 | Autor: | matux |
$MATUXTEXT(ueberfaellige_frage)
|
|
|
|