在我的应用程序中,用户可以发布问题和评论。每个问题都有很多评论,评论属于一个问题。此应用程序可能有数百万用户。我们必须从问题和评论中提取标签。
现在我们计划拥有这样的数据库结构。
问题表(id,问题)
评论表(id,评论)
标签表(id,tag_name)
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
由于
答案 0 :(得分:0)
我会制作两张桌子而不是:
tags_questions_comments (id,tag_id,question_id,comment_id)
包括集合:
tags_questions (tag_id,question_id)
另一个评论意见:
questions_comments (question_id,comment_id)
除非您在评论表中添加questionId
列,这可能是根据您的需求更好的方法。