Frage zu einem JOIN

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Frage zu einem JOIN

    Hi,

    habe 3 Tabellen aus denen ich verschiedene Daten rauslesen möchte.

    tblMatchReports (Dort stehen Spielberichte drinn)
    tblFixtures (Spielpläne mit Ergebnissen)
    tblTeams (Mannschaften)

    Es gibt 2 Möglichkeiten Matchreports zu schreiben, einmal direkt über die Seite der Spielpläne oder alternativ über ein extra Formular. Getrennt ist das Ganze, da ich auch die Möglichkeit geben möchte über Freundschaftspiele schreiben zu können, die nicht in der Liste der Ligaspiele aufgeführt sind.

    Wenn ich über den Spielplan gehe wird in die tblMatchReports die FixtureID des jeweiligen Spiels eingetragen, beim späteren Auslesen wird dann als Titel die Mannschaften und das Ergebnis automatisch angezeigt.

    Wenn ich nun alternativ meinen Matchreport schreibe, wird in der tblMatchReports natürlich keine FixtureID eingetragen, da es keine gibt. FixtureIDs gibt es nur bei Ligaspielen.

    Nun möchte ich auf einer Seite alle Matchreports anzeigen, dafür habe ich ein JOIN zusammengebastelt.

    PHP-Code:
    tblMatchReports.FixtureID,tblMatchReports.MatchReportID,tblMatchReports.MatchReportTitle,tblMatchReports.MatchReportText,
    tblFixtures.HomeTeamID as HomeTeam,tblFixtures.GuestTeamID as GuestTeam,tblFixtures.MatchDate,
    tblFixtures.HomeGoalsGuestGoals,
    Heim.TeamName as HomeTeam
    Gast.TeamName as GuestTeam 

    FROM tblMatchReports 
    INNER JOIN tblFixtures ON tblMatchReports
    .FixtureID=tblFixtures.FixtureID 
    INNER JOIN tblTeams Gast  ON tblFixtures
    .HomeTeamID=Heim.TeamID 
    INNER JOIN JOIN tblTeams Heim  ON tblFixtures
    .GuestTeamID=Gast.TeamID 
    Leider werden mir so nur die Matchreports, die eine FixtureID haben angezeigt. Ich möchte aber ja alle angezeigt bekommen und bei denen mit FixtureID noch die Informationen Manschaftsnamen und Ergebnis.

    Habe das mal mit OUTER JOIN probiert, funktioniert aber nur wenn ich diesen Teil :
    PHP-Code:
    INNER JOIN tblTeams Gast  ON tblFixtures.HomeTeamID=Heim.TeamID 
    INNER JOIN JOIN tblTeams Heim  ON tblFixtures
    .GuestTeamID=Gast.TeamID 
    komplett weglasse. Wenn ich 3 OUTER nehme kommt eine Fehlermeldung:
    Cross dependency found in OUTER JOIN; examine your ON conditions
    Habe noch nie OUTER benutzt, bzw hatte auch noch die ein solches Problem zu lösen. In welcher Richtung müsste ich da für eine Lösung schauen. Habe schon ordentlich gegoogelt, sogar eine neue MySQL Version installiert, nicht das es daran liegt aber immer noch keine Lösung in Sicht.

    Jemand einen Tip? Wäre wirklich dankbar dafür. Vielen Dank im Voraus.
Lädt...
X