Einzelnen Beitrag anzeigen
  #1  
Alt 05.04.2018, 15:26:39
sox666 sox666 ist offline
Anfänger
 
Registriert seit: Nov 2006
Alter: 17
Beiträge: 5
Mehrfach JOIN auf 2 Tabellen

Hallo, vielleicht kann mir noch mal jemand "Nachhilfeunterricht" geben, aber bitte seid nich so hart zu mir ;-)
Ich versuche gerade eine PHP/MySQL Script für die kommende Weltmeisterschaft zu erstellen. Dazu habe ich 2 Tabellen angelegt:

Code:
CREATE TABLE `t_teams` (
  `team` varchar(30) NOT NULL,
  `shortcut` char(3) NOT NULL,
  `wappen` varchar(100) NOT NULL,
  `gruppe` char(1) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=COMPACT;
Code:
CREATE TABLE `t_austragungen` (
  `aid` int(11) NOT NULL,
  `datum` date NOT NULL,
  `uhrzeit` time NOT NULL,
  `ort` varchar(30) NOT NULL,
  `f_team1` varchar(30) NOT NULL,
  `f_team2` varchar(30) NOT NULL,
  `tore_team1` int(2) DEFAULT NULL,
  `tore_team2` int(2) DEFAULT NULL,
  `pkt_team1` int(1) DEFAULT NULL,
  `pkt_team2` int(1) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
In der Tabelle t_austragungen gibt es 2 Fremdschlüssel f_team1 und f_team2, die auf die teams in der Tabelle t_teams zeigen (Ist das überhaupt erlaubt?!).

Code:
ALTER TABLE `t_austragungen`
  ADD CONSTRAINT `t_austragungen_ibfk_1` FOREIGN KEY (`f_team1`) REFERENCES `t_teams` (`team`) ON DELETE CASCADE ON UPDATE CASCADE,
  ADD CONSTRAINT `t_austragungen_ibfk_2` FOREIGN KEY (`f_team2`) REFERENCES `t_teams` (`team`) ON DELETE CASCADE ON UPDATE CASCADE;
Mein JOIN Problem erkläre ich mal mit einer einfachen Abfrage:
Code:
SELECT a.f_team1, t.wappen AS Wappen1, a.f_team2, t.wappen AS Wappen2 FROM t_teams t JOIN t_austragungen a ON a.f_team1=t.team OR a.f_team2=t.team
Als Ausgabe erhalte ich nun 4 Spalten (Screenshot). Jedoch ist die Spalte Wappen1 und Wappen2 identisch. Über jede Hilfe bedanke ich mich schon mal im Vorraus.
Mit Zitat antworten