2013-04-08 232 views
2

在我的應用程序中,用戶可以發佈問題和評論。每個問題都有很多評論,評論屬於一個問題。這個應用程序可能有數百萬用戶。我們必須從問題和評論中提取標籤。需要幫助DB結構

現在我們打算有這樣的db結構。

  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 

感謝

+0

更適合[dba.se]? – Dukeling 2013-04-08 09:29:59

回答

0

我會做兩個表,而不是:

tags_questions_comments (id,tag_id,question_id,comment_id)

的一個包括一組:

tags_questions (tag_id,question_id) 

而另一個用於評論:

questions_comments (question_id,comment_id) 

除非您將questionId列添加到評論表中,根據您的需要這可能是更好的方法。

+0

謝謝TwoMore。我在評論表中添加了question_id。很高興聽到我的方法是正確的:) – user2256890 2013-04-08 10:08:17