Hey, wir machen in einer LV gerade sowas wie ein Social Network und wir müssen eben ein paar Basis Querys anwenden (können).
Habe da leider einige Probleme vielleiche kann mir ja jemand weiterhelfen.
Schema:
person(email,......)
freundlink(email,emailfreund,bis...)
hasstlink(email,emailhasst, von) //die Person mit email hasst die Person mit emailhasst
Ich muss jetzt mal auf Fehler überprüfen unter anderem wenn eine person zur gleichen zeit mit einer anderen befreundet/verhasst ist. (Subquerys sind nicht zulässig)
Mein query, welcher nix zurückliefert:
erstellen....personen die sich zur selben zeit nicht mögen:
//keine Ahnung wie ich die Zeitabfrage machen soll
gib alle Personen aus, welche eine Person nicht mögen diese Person sie aber schon mag.
Also, ich habe mir die drei Sachen mal als Mengen Diagramm aufgezeichnet, jedoch finde ich meinen Fehler nicht.
Vom Prinzip her sind sie für mich korrekt.
Und dann soll ich noch überprüfen ob es drei Personen gibt, die sich als gegenseitig als Freunde angegeben haben, bzw sich hassen.
Jedoch habe ich da keinen Ansatz.
Habe da leider einige Probleme vielleiche kann mir ja jemand weiterhelfen.
Schema:
person(email,......)
freundlink(email,emailfreund,bis...)
hasstlink(email,emailhasst, von) //die Person mit email hasst die Person mit emailhasst
Ich muss jetzt mal auf Fehler überprüfen unter anderem wenn eine person zur gleichen zeit mit einer anderen befreundet/verhasst ist. (Subquerys sind nicht zulässig)
Mein query, welcher nix zurückliefert:
Code:
create view as fail(email1,email2) as select p1.email.p2.email
from person p1,person p2, freundlink f ,hasstlink h
where p1.email=f.email and p2.email=h.emailfreund and //selektiere alle die miteinander befreundet sind
p1.email=h.email and p2.email=h.emailhasst //selektiere davon alle wo p1, p2 hasst
and h.von < f.bis;
erstellen....personen die sich zur selben zeit nicht mögen:
Code:
from person p1,person p2, hasstlink h
where p1.email=h.email and p2.email=h.emailhasst and
p2.email=h.email and p1.email=h.emailhasst and
gib alle Personen aus, welche eine Person nicht mögen diese Person sie aber schon mag.
Code:
from person p1, person p2. hasstlink h, freundlink f
where p1.email=f.email and p2.email=f.emailfreund //selektiere alle paare die befreundet sind
and p2.email=h.email and p1.email = h.emailhasst //selektiere die, die den der sie mag, hasst
Also, ich habe mir die drei Sachen mal als Mengen Diagramm aufgezeichnet, jedoch finde ich meinen Fehler nicht.
Vom Prinzip her sind sie für mich korrekt.
Und dann soll ich noch überprüfen ob es drei Personen gibt, die sich als gegenseitig als Freunde angegeben haben, bzw sich hassen.
Jedoch habe ich da keinen Ansatz.