Peter: Wie löse ich folgendes sql-Problem? (betrifft SELECT)

Beitrag lesen

Hallo... ich versuche mich gerade an einer Bundesliga-Datenbank und habe bei der Spieltagsausgbe ein Problem. Wär schön, wenn jemand weiterhelfen könnte. Hier die Rahmenvoraussetzungen:

  1. in der Tabelle "teamnr" wird jedem Team eine Teamnummer zugeordnet, also z.B.

1,Arminia Bielefeld
2,Werder Bremen
.
.
.

  1. in der Tabelle "saisonspieltagspielnr1" besteht der Primärschlüssel aus "saison", "spieltag" und "spielnr". Diesem Schlüssel wird jeweils eine Teamnummer eines Teams mit Heimrecht zugeordnet, wobei die Teamnummer der Nummer in Tabelle "teamnr" (s.o.) entspricht. Z.B.

2002,1,1,1
(Bedeutet: Saison 2002, Spieltag 1, Spielnummer 1, Heimrecht für Teamnummer 1 (Arminia Bielefeld)

  1. Analog dazu existiert sdie Tabelle "saisonspieltagspielnr2" mit gleichem Primärschlüssel, nur das hier halt das Gastteam angegeben wird:

2002,1,1,2
(Bedeutet: Saison 2002, Spieltag 1, Spielnummer 1, Gastrecht für Teamnummer 2 (Werder Bremen)

Das Problem: Ich suche nach einer Abfrage, die mir als Ergebnis lediglich den Namen des Heimteams und den Namen des Gastteams in einer Zeile wiedergibt, also

Arminia Bielefeld Werder Bremen

Irgendwie ist das (jedenfalls für mich ;o) nicht so einfach, da sowohl die Heimteamnummer als auch die Gastteamnummer innerhalb EINER Abfrage mit der Tabelle "teamnr" verknüpft werden muß. Ich hab da keine Ahnung, wie das funktioniert.
Mit...

SELECT s1.heimteamnr, t1.name, s2.gastteamnr FROM teamnr t1, saisonspieltagspielnr1 s1, saisonspieltagspielnr2 s2 WHERE s1.saison = 2002 AND s1.spieltag = 1 AND t1.teamnr = s1.heimteamnr AND s1.saison = s2.saison AND s1.spieltag = s2.spieltag AND s1.spielnr = s2.spielnr

schaff isch es gerade mal, die Heimteamnummer mit dem korrekten Teamnamen zu verknüpfen und dazu die entsprechende Gastteamnummer anzuzeigen. Allerdings hab ich es noch nicht geschafft, diese Gastteamnummer innerhalb der gleichen Abfrage ebenfalls mit dem passenden Teamnamen zu Verknüpfen. Jemand 'ne Ahnung?

Dankeschön.