Комментируйте деревья в sql и html - PullRequest
0 голосов
/ 20 января 2010

Я хочу придумать способ отображения и запроса комментариев.

Каждый комментарий может иметь детей и братьев и сестер.Я хотел бы отобразить 40 комментариев на странице.Тем не менее, я хотел бы показать всем детям.Проблема в том, что если у ребенка более 40 комментариев, это не сработает.Кроме того, я понятия не имею, как я могу получить комментарии.Я мог бы запросить все комментарии, которые принадлежат media.id и построить дерево, основываясь на его точке зрения, но разве анализ и обход всего этого не требуют времени?Я не уверен, что лучший способ сделать это.

Таблица комментариев выглядит так:

public class comment
{
    public PK id;
    public media media;
    public comment parent;
    public user_data author;
    public DateTime date;
    public string text;
    public Flags flags;
}

1 Ответ

1 голос
/ 20 января 2010

В этой статье объясняется, как встроить дерево в вашу таблицу: http://www.sqlteam.com/article/more-trees-hierarchies-in-sql В этот момент вы можете запросить, чтобы получить страницы 40 в обычном порядке, сортируя по полю линии.
... Вот пример, который показывает, как сделать пейджинг в t-sql: http://blogs.x2line.com/al/archive/2005/11/18/1323.aspx

В вашем случае вы бы использовали SELECT ROW_NUMBER() OVER(ORDER BY lineage) AS RowNum или что-то в этом роде.

При использовании этого метода ваши запросы будут очень быстрыми.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...