phpbar.de logo

Mailinglisten-Archive

[php] SQL-Abfrage, Baumdarstellung, Verknüpfungen, Vereinfachung

[php] SQL-Abfrage, Baumdarstellung, Verknüpfungen, Vereinfachung

Dennis Dohle php at 72design.de
Don Sep 20 11:32:13 CEST 2007


Hey Liste,

ich versuche gerade, unser CRM-System zu optimieren und bin dabei auf eine
Sache gestoßen, die mich noch etwas nervt. Wir haben im System einen
Bereich, in dem wir Vorgänge wie Anrufe, Faxe, E-Mail zu einer Person
speichern. Beim Anlegen eines Vorgangs kann ich eine Verknüpfung zu einem
schon bestehenden Vorgang auswählen. Eine Beispielvorgangsliste könnte dann
so aussehen:

Vorgang 1 (ID 1)
----- Vorgang 2 (ID 2)
----- Vorgang 3 (ID 3)
------------- Vorgang (ID 4)
----- Vorgang (ID 5)
Vorgang (ID 6)
Vorgang (ID 7)
Vorgang (ID 8)
----- Vorgang (ID 9)
...

Hierzu gibt es eine separate Verknüpfungstabelle mit zwei Feldern in der
Datenbank. 

Feld 1: parent
Feld 2: child

Mit den IDs im Beispiel oben wäre das z.B. dann:

1 , 2
1 , 3
3 , 4
1 , 5
...

So, jetzt kommt das Performance-Problem. Ich lesen im Grunde jede "Ebene"
für sich aus, überprüfe dann die Einträge auf Untereinträge und lese diese
wiederum aus. So habe ich im Beispiel oben 9 Einträge, also auch 9
SELECT-Anweisungen. Finde ich irgendwie nicht schön.

Hat da jemand vielleicht eine Idee zu?

Greetings, Dennis




php::bar PHP Wiki   -   Listenarchive