一列中有多个值?

时间:2012-10-16 17:15:01

标签: mysql

  

可能重复:
  When to use comma-separated values in a DB Column?

我想创建类似的文章脚本。我的想法是文章与ID类似。例如,如果本文的文章ID = 1,则类似的文章将使用similar_id = 1

表示例:

ID     Similar_ID   
1          0
2          0
3          1
4          1

ID为1的文章将包含2个ID为3和4的额外文章。

如果有多个类似的ID,如何建模表格?

示例:

ID     Similar_ID   
1          0
2          0
3          1,2
4          1,2,3

1 个答案:

答案 0 :(得分:4)

您应该使用两个表,一个是上面的原始表,另一个是每个Article-Similar Article有一行的表。

所以你的原始表格是:文章

    ID     Content   
    1          bla 
    2          blah 
    3          etc.
    4          whatever

你的另一张桌子就像你上面的那样:ArticlesSimilar

    ID     Similar_ID   
    3          1
    3          2
    4          1
    4          2
    4          3

您可以确保ID-Similar_ID组合为UNIQUE。