Kompliezierte mySQL abfrage

sackstand

Gesperrt
hallo,

ich habe ein "grosses" Problem mit einer mySQL Abfrage. Ich habe eine DB erstellt mit 3 Tabellen. board,thread und post diese haben den Folgenden inhalt (unwichtiges weggelassen)

Board:

Board_ID
Parent_ID

Name

Thread:

Thread_ID
Board_ID
Name

Post:

Post_ID
Thread_ID
Name




daraus kann mann erkennen das jedes Board eine X zahl von UNter und Unter boards haben kann. Nun ist meine Frage:

Wie kann ich eine mySQL abfrage machen wo ich herrausfinden kann wieviel Threads und Posts am dem momentanen standort in jedem board samt unterboards (und den darin enthaltenen posts usw) steckt?
 
Das solltest du mit PHP machen, mit mySQL geht das AFAIK nicht. Eine Funktion, die solange jedes Unterboard bzw Forum/Unterforum bzw die Posts darin aufruft und zählt sollte da am praktikabelsten sein.
 
hmm und wie sieht es mit der Performance aus ?? ich meine wenn da ca 30000 Posts sind in x themen und 20 user gleichzeit halt im forum rumsurfen schluckt das nicht unmengen an Leistung ?


SOllte mann da evt mit dem Nestedset model arbeiten da man da besser suchen kann nach diesem schema ?
 
Original geschrieben von sackstand
SOllte mann da evt mit dem Nestedset model arbeiten da man da besser suchen kann nach diesem schema ?
Nach Deiner Datenbankstruktur müsstest Du wohl rekursiv vorgehen, was bei steigender Anzahl von Beiträgen dann zu Lasten der Performance gehen würde. Nested Sets zu verwenden halte ich auch für sinnvoll, obwohl ich selbst ehrlich gesagt noch gar nicht damit gearbeitet habe, und mich nur darauf beziehen kann, was ich so gelesen habe. Jedenfalls könntest Du das ganze selbst schreiben oder auf ein Pear-Package zurückgreifen: Nested Sets
 

Neue Beiträge

Zurück