Hallo Zusammen,
Ich habe so ähnlich eine Tabelle:
+-------------+---------+--------+
| category_id | name | parent |
+-------------+-------- +--------+
| 1 | ELECTRONICS | NULL |
| 2 | TELEVISIONS | 1 |
| 3 | TUBE | 2 |
| 4 | LCD | 2 |
| 5 | PLASMA | 2 |
| 6 | PORTABLE ELECTRONICS | 1 |
| 7 | MP3 PLAYERS | 6 |
| 8 | FLASH | 7 |
| 9 | CD PLAYERS | 6 |
| 10 | 2 WAY RADIOS | 6 |
+-------------+---------+--------+
Ich mache wie folgt Abfragen:
SELECT t1.name AS lev1, t2.name as lev2, t3.name as lev3, t4.name as lev4
FROM category AS t1
LEFT JOIN category AS t2 ON t2.parent = t1.category_id
LEFT JOIN category AS t3 ON t3.parent = t2.category_id
LEFT JOIN category AS t4 ON t4.parent = t3.category_id
WHERE t1.name = 'ELECTRONICS';
Ich brauche vielmehr joins. Manchmal schreibe ich leider 10 Joins nacheindander.
Kann jemand diese Abfrage für mich in rekursive Form schrieben? Ich beschäftige mich seit stunden damit.
Oder vielleicht ein Mysql-Prozedur.
Bitte Hilfe
Ich habe so ähnlich eine Tabelle:
+-------------+---------+--------+
| category_id | name | parent |
+-------------+-------- +--------+
| 1 | ELECTRONICS | NULL |
| 2 | TELEVISIONS | 1 |
| 3 | TUBE | 2 |
| 4 | LCD | 2 |
| 5 | PLASMA | 2 |
| 6 | PORTABLE ELECTRONICS | 1 |
| 7 | MP3 PLAYERS | 6 |
| 8 | FLASH | 7 |
| 9 | CD PLAYERS | 6 |
| 10 | 2 WAY RADIOS | 6 |
+-------------+---------+--------+
Ich mache wie folgt Abfragen:
SELECT t1.name AS lev1, t2.name as lev2, t3.name as lev3, t4.name as lev4
FROM category AS t1
LEFT JOIN category AS t2 ON t2.parent = t1.category_id
LEFT JOIN category AS t3 ON t3.parent = t2.category_id
LEFT JOIN category AS t4 ON t4.parent = t3.category_id
WHERE t1.name = 'ELECTRONICS';
Ich brauche vielmehr joins. Manchmal schreibe ich leider 10 Joins nacheindander.
Kann jemand diese Abfrage für mich in rekursive Form schrieben? Ich beschäftige mich seit stunden damit.
Oder vielleicht ein Mysql-Prozedur.
Bitte Hilfe