Anzeige - [Interessiert an einer Anzeige?]
(?) Tags raten (?) (edit)
 
Reply to this topicStart new topicStart Poll
> Relationsalgebra
G.P.
Geschrieben am: Do 10.01.2008, 19:47
Report PostQuote Post

AyomRank 6
************

Gruppe: Member (aktiv)
Beiträge: 720
Mitglied seit: 21.10.2004


Hallo,

ich bin gerade nach Haus gekommen und habe noch ein Projekt aufgedonnert bekommen welches bis morgen fertig gestellt werden soll. Ganz nebenbei muss ich auch noch ein paar Uebungsaufgaben fuer die Uni loesen.
An sich habe ich inzwischen alle fertig, mit einer Aussnahme. Bei der Aufgabe handelt es sich um erweiterte Relationsalgebra. Leider habe ich davon keine Ahnung und auch gerade nicht die Zeit mich einzulesen. Waehre also echt super wenn mir jemand helfen kann.

QUOTE

Ein Kunde hat wenig Zeit und kauft gern günstig ein. Er braucht für das Wochenende unbedingt noch Orangen und Spaghetti, aber er möchte möglichst nur einen Supermarkt aufsuchen und nur Waren aus dem Angebot kaufen. Gibt es einen solchen Supermarkt? Gesucht sind Name und Adresse.
Formulieren Sie für diese Anfrage einen Ausdruck mit den Operationen der erweiterten Relationenalgebra.

Tabellen:

Supermarkt (SID, Name, Adresse)
Angebot (SID, ANr)
Artikel (ANr, Bezeichnung)


Danke schon einmal im Voraus.

MfG
GP


--------------------
SnEO.de - PR4 Domains ab 1 Euro
GoodBoard.de - Kostenlose Foren
FSJ-ADiA.de - Zivildienst im Ausland
Top
PMEmail PosterUsers Website
Top
 
 
Alain_Aubert
#2 Geschrieben am: Do 10.01.2008, 23:02 (+03:15)
Report PostQuote Post

Ayom Slave
Group Icon

Gruppe: Admin
Beiträge: 4721
Mitglied seit: 25.09.2003


Ich glaub der Jürgen ist schon im Bett. Wir haben verloren...

Denn zu meinem Beschämen kann ich das nicht mehr! Die SQL Query würd ich locker hinkriegen...

Mein erster Wurf war:
\phi(name, add)(Supermarkt\fliege(Angebote)\fliege\sigma[Bezeichnung="Orangen" \v Bezeichnung="Spaghetti"](Produkt))

Kein latex plugin also:
\phi ist das 3.14 dings da
\fliege ist natural join, sieht halt aus wie ne Fliege
\sigma ist halt sigma wink.gif das kleine o mit dem Haken
\v ist logisch or

Jetzt ist das nur offensichtlich falsch, weil es alle Namen und Adressen der Supermärkte liefert, die entweder Spaghetti und Orangen haben...

Ich hab mein bestes probiert und bin gescheitert, also erwart ich von Dir, dass Du in die Übungsstunde gehst und die Lösung hier postest.. wink.gif

Hm. evtl. ist es korrekt, wenn das \v in ein logisches Und verwandelt wird, also
\phi(name, add)(Supermarkt\fliege(Angebote)\fliege\sigma[Bezeichnung="Orangen" \n Bezeichnung="Spaghetti"](Produkt))

Hm. Also wenn keine zweite Meinung reinkommt und Du gar nicht auf die Lösung kommst, gib zweite Variante ab, aber es ist doch zu lange her als dass ich eine grosse Hilfe bin.. Ich hätte doch lieber auf das Thema mit dem leuchtenden Schwein klicken sollen...


PS:
\phi ist Projektion
\sigma ist Selektion
Ist das anders-rum in Deinen Vorlesungsunterlagen, musste halt ändern, weiss nicht mehr genau.
Top
PMEmail PosterUsers Website
Top
 
Maik
power-labels AG
#3 Geschrieben am: Fr 11.01.2008, 05:36 (+06:33)
Report PostQuote Post

AyomRank 5
**********

Gruppe: Member (aktiv)
Beiträge: 477
Mitglied seit: 16.03.2006


Das ist das was ich habe:

PName,Adresse(JSID(JANr(Supermarkt,SBezeichnung='Orange'(Artikel) n SBezeichnung='Spaghetti'(Artikel))))

P = Projektion (PI)
J = Join (Fliege)
S = Selektion (Sigma)
n = und (kopfstehendes u)

Aber ich war in jeglicher Art von Formalsprachen nie sonderlich gut... In SQL wäre der Ausdruck aber auch nicht so simpel, da man einen Join einer Tabelle mit sich selbst machen müsste...


--------------------
Top
PMEmail PosterUsers WebsiteICQ
Top
 
G.P.
#4 Geschrieben am: Fr 11.01.2008, 11:02 (+05:26)
Report PostQuote Post

AyomRank 6
************

Gruppe: Member (aktiv)
Beiträge: 720
Mitglied seit: 21.10.2004


Hallo,

danke euch beiden.
Ich hatte das Glueck diese Aufgabe nicht machen zu muessen biggrin.gif

Aber erst einmal zur Aufgabe. Beide Loesungsanzsaetze von euch sind Falsch, da die Tupel "Orange" und "Spagetthie" nicht mit einer "and" Verknuepfung verbunden werden koennen.
Der eine Bezeichner kann nicht gleichzeitig zwei Werte enthalten. Das ganze muss mit einer "or" Verbindung gemacht werden und Dividiert werden.
So genau habe ich es aber nicht verstanden.

Ein Komulitone hat eine (falsche) Loesung vorgetragen, danach hat die Dozentin ueberall noch etwas hinzugefuegt und gestrichen, bis wirklich alle komplett verwirtt waren und nichts mehr verstanden haben ^^


--------------------
SnEO.de - PR4 Domains ab 1 Euro
GoodBoard.de - Kostenlose Foren
FSJ-ADiA.de - Zivildienst im Ausland
Top
PMEmail PosterUsers Website
Top
 
Maik
power-labels AG
#5 Geschrieben am: Fr 11.01.2008, 15:51 (+04:48)
Report PostQuote Post

AyomRank 5
**********

Gruppe: Member (aktiv)
Beiträge: 477
Mitglied seit: 16.03.2006


ich bin mir ziemlich sicher, dass mein Ansatz jedenfalls richtig ist. Evtl. habe ich es nur falsch geschrieben. In SQL ist's Wortwörtlich ungefähr:

SELECT Name,Adresse FROM (SELECT * FROM (SELECT * FROM Artikel WHERE Bezeichnung='Orange') WHERE Bezeichnung='Spaghetti') AS Selektion
LEFT JOIN Supermarkt ON Supermarkt.ANr=Selektion.ANr
LEFT JOIN Angebot ON Supermarkt.SID=Angebot.SID

OK, ein Fehler habe ich oben drin... Angebot fehlte...bzw. war vertauscht

PName,Adresse(JSID(Supermarkt,JANr(Angebote,SBezeichnung='Orange'(Artikel) n SBezeichnung='Spaghetti'(Artikel))))


--------------------
Top
PMEmail PosterUsers WebsiteICQ
Top
 
Maik
power-labels AG
#6 Geschrieben am: Fr 11.01.2008, 15:53 (+00:01)
Report PostQuote Post

AyomRank 5
**********

Gruppe: Member (aktiv)
Beiträge: 477
Mitglied seit: 16.03.2006


PS: Ein zweiter ansatz wäre über ein Produkt von Angebot mit sich selbst...


--------------------
Top
PMEmail PosterUsers WebsiteICQ
Top
 
Thema wird von 0 Benutzer(n) gelesen (0 Gäste und 0 anonyme Benutzer)
0 Mitglieder:
Trackback-Url: http://www.ayom.com/track/t/22409

Topic Options Reply to this topicStart new topicStart Poll

 





Anzeige - [Interessiert an einer Anzeige?]



Anzeigen


[Interessiert an einer Anzeige?]