Compte tenu des commentaires dans la question initiale entre moi et Zirak, je proposerais la réponse suivante.
Il a raison - parcourir l'arbre entier pour trouver la date du commentaire le plus récent peut prendre un certain temps, car il semblerait qu'il n'y ait pas de limite au nombre de niveaux d'imbrication qui peuvent avoir lieu dans le système. Je suis conscient que cela représente beaucoup de répétitions de données, mais pourquoi ne pas stocker quelque chose comme main_post_id
, qui fait référence au nœud racine (poste principal). De cette façon, vous pouvez ORDER BY max(time) WHERE main_post_id = 1
.
S'il s'agit d'un logiciel de forum (qui, je suppose, peut donc également impliquer des choses comme la pagination des listes de fils de discussion), cela rendrait la vie beaucoup plus facile, car vous pourriez effectuer le tri au niveau de la requête de la base de données, plutôt que dans le PHP.