2

在我的应用程序中,用户可以发布问题和评论。每个问题都有很多评论,评论属于一个问题。此应用程序可能有数百万用户。我们必须从问题和评论中提取标签。

现在我们计划有这样的数据库结构。

  1. 问题表(id,问题)

  2. 评论表(id,评论)

  3. 标签表(id,tag_name)

  4. tags_questions_comments (id,tag_id,question_id,comment_id)

现在我对这是否正确感到困惑?

id  tag_id     question_id comment_id   
--------------------------------------
1   1          1           NULL         -> tag from question  
2   2          1           NULL
3   3          1           1            -> tag from comment

谢谢

4

1 回答 1

0

我会制作两张桌子,而不是:

tags_questions_comments (id,tag_id,question_id,comment_id)

一个包括一组:

tags_questions (tag_id,question_id)

另一个用于评论:

questions_comments (question_id,comment_id)

除非您questionId在评论表中添加一列,这可能是根据您的需要更好的方法。

于 2013-04-08T09:30:02.523 回答