0

我有一张桌子

CREATE TABLE IF NOT EXISTS forum_comments (
comment_id int(11) NOT NULL AUTO_INCREMENT,
comment_by int(11) NOT NULL,
topic_id int(11) NOT NULL,
parent int(11) NOT NULL DEFAULT '0',
comment text NOT NULL,
commented_date datetime NOT NULL,
commented_type enum('user','admin') NOT NULL DEFAULT 'user',
level int(11) NOT NULL DEFAULT '1',
status enum('publish','unpublish','block') NOT NULL,
PRIMARY KEY (comment_id)
)

comment_by是发表评论的用户 id 是发表评论的用户 ID
topic_id如果
parent评论是对其他评论的回复
comment是评论文本
level是评论的深度(1 到 n 级),1 是针对主题的第一级评论。

评论深度可以是第 n 级。我需要一个查询来按主题 ID 获取评论。

select * from forum_comments where topic_id = 1

我想按主题 id 检索所有评论,但评论应该有回复,这些回复也存储在带有“父”的评论表中(父表示该回复发布到的原始评论 id)并且所有评论和回复都应该采用树视图格式因为我需要以树格式显示评论。

1 Comment (main comment with "parent" 0)
  2 reply (reply with "parent" 1)
    3 reply (reply with "parent" 2)
       4 reply (reply with "parent" 3)

提前致谢

4

1 回答 1

0

所以试试这样

SELECT * FROM forum_comments WHERE comment_id = 1 ORDER BY comment_id ASC

或者您也可以尝试使用日期

SELECT * FROM forum_comments WHERE comment_id = 1 ORDER BY comment_date ASC
于 2013-03-15T10:33:16.470 回答