2012-05-25 91 views
0

我的问题是我有一堆'对象'。这些对象可以有最多3个单词的列表,也可以没有。对于mysql我已经有一个每个对象的行,我试图找出如何合并单词。这里是我的方法:不同大小的列表

1:我有3个额外的列每个单词。当没有3个单词时,这虽然留下空的,还原单元格。

2:有1列,每个单词由该列中的空格分隔。当没有词并且需要额外处理时,这留下冗余单元格

3:制作另一个表格来保存带有引用其相应对象的引用号码的单词。这需要额外的查询,但在我看来是冗余度最低。

建议?

回答

0

我总是会使用额外的表格去#3。这确保将来如果您需要在所有对象上使用SQL执行任何“Word”搜索或更改结构以添加更多单词或减少单词,那么不会出现任何打嗝。另外,这些额外的查询通常对于RDBMS服务器来说是非常小的负担。此外,所有其他选项还需要PHP的某些处理(假设它是编码语言),这也会消耗一些CPU周期。但是由于#3将来会很好地扩展,所以我宁愿选择#3。

+0

表(id_object,id_word)谢谢大家了放心! :) – user1415803

0

号#3名为字(id_word,字),并命名为object_words其他表InnoDB表型科西嘉的可以肯定的完整性