JOIN über 5 Tabellen mit MySQL
Tigerchen
- datenbank
'tagchen
sorry für die dumme frage, aber egal wie ichs versuch das krieg ich ned hin
ich versuch 5 tables zu JOIN`en
vorhanden sind also 5 tables und es soll sowohl INNER JOIN
als auch LEFT OUTER JOIN und RIGHT OUTER JOIN verwendet werden.
Ich hab keinen blassen schimmer wie ich das anstellen soll,
weder von seiten des syntax, und auch nicht
welche tabelle in welcher INNER oder RIGHT bzw. LEFT Joinen soll.
Bitte um einen query mit RIGHT, LEFT und INNER Join.
(Soll in ein Schulreferat eingebaut werden)
Tausend Dank!!
Tigerchen
Habe mal versuchsweise 5 tables angelegt.
Vielleicht helfen sie ja etwas, vielleicht auch nicht...
Einige id gibt es in jeder Tabelle, vielleicht lässt sich damit
ein Beispiel machen....
mysql> SELECT * FROM t1;
+----+---------+
| id | name |
+----+---------+
| 1 | Max |
| 2 | Karl |
| 3 | Philipp |
| 4 | Robby |
| 5 | Tony |
| 6 | Norbert |
| 7 | Alex |
| 8 | Richard |
| 9 | Lucas |
| 10 | Chris |
+----+---------+
10 rows in set (0.00 sec)
mysql> SELECT * FROM t2;
+----+--------+
| id | name |
+----+--------+
| 4 | Jacque |
| 5 | Liz |
| 6 | Anna |
| 7 | Kate |
| 8 | Angela |
| 9 | Tina |
+----+--------+
6 rows in set (0.00 sec)
mysql> SELECT * FROM t3;
+----+-----------+
| id | name |
+----+-----------+
| 5 | Thomas |
| 6 | Nina |
| 7 | Dominique |
| 8 | Olga |
+----+-----------+
4 rows in set (0.00 sec)
mysql> SELECT * FROM t4;
+----+----------+
| id | name |
+----+----------+
| 6 | Inge |
| 7 | Natascha |
| 8 | Klaus |
+----+----------+
3 rows in set (0.00 sec)
mysql> SELECT * FROM t5;
+----+------+
| id | name |
+----+------+
| 7 | Foxy |
| 8 | Paul |
+----+------+
2 rows in set (0.00 sec)
hi
sorry für die dumme frage, aber egal wie ichs versuch das krieg ich ned hin
ich versuch 5 tables zu JOIN`en
beschreib doch mal, wie die Ausgabe aussehen soll.
Gruß
Reiner
'tagchen Reiner
beschreib doch mal, wie die Ausgabe aussehen soll.
Ist völlig egal, hauptsache der syntax wird veranschaulicht
da ich noch nie 5 tables mit JOIN vereinte (maximal nur immer 2)
und es soll ausserdem ein paar NULL Felder oder so geben
die von den LEFT und RIGHT JOIN kommen so dass man klar sieht
was passiert mit den JOINs und auch was der INNER JOIN macht
Danke
Tigerchen
hi,
beschreib doch mal, wie die Ausgabe aussehen soll.
Ist völlig egal, hauptsache der syntax wird veranschaulicht
da ich noch nie 5 tables mit JOIN vereinte (maximal nur immer 2)
eben nicht völlig egal.
Abgesehen, daß ich Deine Tabellen für unsinnig halte, weil nur Namen drinstehen, aus denen aber nicht hervorgeht, wo die Unterschiede der Personen liegen (z.B. Kunde, Mitarbeiter, ...).
und es soll ausserdem ein paar NULL Felder oder so geben
die von den LEFT und RIGHT JOIN kommen so dass man klar sieht
was passiert mit den JOINs und auch was der INNER JOIN macht
Geh mal auf http://www.mysql.de
Gruß
Reiner
Moin!
sorry für die dumme frage, aber egal wie ichs versuch das krieg ich ned hin
ich versuch 5 tables zu JOIN`enBitte um einen query mit RIGHT, LEFT und INNER Join.
(Soll in ein Schulreferat eingebaut werden)
Damit ein JOIN auch funktioniert, erfordert es eigentlich auch einen Sinn, den man damit verfolgt, denn ansonsten weiß man ja nicht, ob das, was man rauskriegt, auch das ist, was man haben will.
Wenn du also ein Referat schreibst, dann solltest du dir ein vernünftiges Beispiel überlegen, bei dem JOINs auch tatsächlich sinnvoll angewendet werden können.
Und im Übrigen gilt natürlich auch hier:
Was hast du versucht? Was hast du erwartet? Was ist stattdessen passiert? Welche Fehlermeldungen kamen? </faq/#Q-07>.
'tagchen Sven
Versuchen konnte ich noch nicht viel da ich nicht weis
wie man mehr als 2 tables in einem JOIN verwendet.
etwas sinnvolleres fällt mir auch nicht ein,
es soll eben sichtbar werden dass INNER JOIN mit LEFT und RIGHT
zusammenarbeiten kann und eventuell auch nULL Felder entstehen,
und vor allen Dingen hoffe ich klarheit über den syntax zu bekommen
wie ein JOIN mit 5 Tabellen geht.
Dankend,
Tigerchen
Hi,
Versuchen konnte ich noch nicht viel da ich nicht weis
wie man mehr als 2 tables in einem JOIN verwendet.
Am besten garnicht?
etwas sinnvolleres fällt mir auch nicht ein,
es soll eben sichtbar werden dass INNER JOIN mit LEFT und RIGHT
zusammenarbeiten kann und eventuell auch nULL Felder entstehen,
und vor allen Dingen hoffe ich klarheit über den syntax zu bekommen
wie ein JOIN mit 5 Tabellen geht.
Wenn du einen JOIN über 5 Tabellen brauchst hast du normalerweise ein Problem zu lösen, von dem du ein halbes Jahr leben kannst, oder einfach keinen Schimmer von Datenbankdesign, denn, sorry, sowas kommt nun wirklich nur in sehr schlechten und sehr komplexen Relationen vor.
Also streng dich mal an und überlege, was man mit JOINs macht, dann kommst du bestimmt darauf, welche Struktur welche über 5 Tabellen erfordern würde.
Grüße aus Barsinghausen,
Fabian