2008-12-11 13 views
2

Je dois stocker des commentaires de style blog dans une base de données. Chaque commentaire peut avoir un parent.Meilleur moyen de récupérer des données hiérarchiques à partir de la base de données

Je le fais avec une colonne appelée "parentComment" qui a une valeur nulle lorsqu'il s'agit d'un commentaire de niveau supérieur ou qui a une valeur s'il s'agit d'une réponse à un autre commentaire.

Quel est le moyen le plus efficace pour récupérer un commentaire et tous ses enfants?

+0

Sur quel SGBD? Ils diffèrent dans la façon dont ils font des requêtes hiérarchiques. –

+0

Voir http://stackoverflow.com/questions/192220/what-is-the-most-efficientelegant-way-to-parse-a-flat-table-into-a-tree –

+0

Je suis d'accord avec Dawkins, mais quoi qu'il en soit , voici une autre question similaire: http://stackoverflow.com/questions/38801/sql-how-to-store-and-navigate-hierarchies –

Répondre

1

Une technique assez courante consiste à avoir aussi une relation (dupliquée, indirectement) avec la "racine" de l'arbre, ce qui signifie que vous pouvez sélectionner l'arbre complet dans une sélection soignée. Sinon, il devient rapidement sale.