Es gibt eine "Kontakte" -Liste. Einige "Kontakte" sind Eltern und einige sind Kinder. Manche Kontakte haben mehr als ein Kind. Manche Kinder haben mehr als einen Elternteil. Ein Kontakt kann ein Elternteil und ein Kind (Enkelkinder) sein.MySql-Gruppe Von der gleichen Tabelle?
Die Beziehung zwischen Kontakten wird in der Tabelle "eltern_und_kinder" zugeordnet.
"contacts" table
+----+------+
| id | name |
+----+------+
| 1 | p1 |
| 2 | p2 |
| 3 | p3 |
| 4 | p4 |
| 5 | p5 |
| 6 | p6 |
+----+------+
"parents_and_children" table
+----+-----------+----------+
| id | parent_id | child_id |
+----+-----------+----------+
| 1 | 1 | 2 |
| 2 | 1 | 3 |
| 3 | 3 | 4 |
| 4 | 5 | 2 |
| 5 | 5 | 3 |
| 6 | 5 | 6 |
+----+-----------+----------+
Das Ergebnis bei der Abfrage sein sollte:
+-------------------+------------------+
| parent(s) name(s) | children name(s) |
+-------------------+------------------+
| p1, p5 | p2, p3 |
| p3 | p4 |
| p5 | p6 |
+-------------------+------------------+
Beachten Sie, dass p3 ein Kind von p1 und p5 und auch Eltern zu p4 ist. p5 ist ein Elternteil für p2 und p3 mit p1 und p6 für sich.
Ich brauche keine komplette Lösung. Bitte zeig mir die Richtung, und ich komme selbst hin. Bisher hat nichts funktioniert.
MySQL nicht native Unterstützung für Rekursion hat ... weshalb diese Frage weit – Strawberry