PHP Forum

PHP Forum (http://www.selfphp.de/forum/index.php)
-   MySQL/MySQLi (http://www.selfphp.de/forum/forumdisplay.php?f=22)
-   -   Mehrfach JOIN auf 2 Tabellen (http://www.selfphp.de/forum/showthread.php?t=26125)

sox666 05.04.2018 16:26:39

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.

sox666 06.04.2018 13:07:59

AW: Mehrfach JOIN auf 2 Tabellen
 
Ich habe eine Lösung gefunden. Anscheinend hatte jemand die selbe Idee ;-)

http://www.selfphp.de/forum/showthread.php?t=17031


Alle Zeitangaben in WEZ +2. Es ist jetzt 01:29:08 Uhr.

Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.