一列或单独的列用于额外数据 - mysql

时间:2014-10-09 15:05:59

标签: mysql sql json

我在想如果我有一个包含meta_description(varchar 300),meta_tags(varchar 300)和meta_title(varchar 200)列的表...我可以将所有这些列“加入”一列“extra_information” “(longtext)并在这里保存相同的信息但可能采用JSON格式?

这是否方便,为什么:)?

这个字段对我来说不是很重要,我永远不会通过这些信息进行任何查询来搜索或排序结果。例如,元标记只是一个逗号分隔的文本,我不需要在此处做某种关系表。

我想知道的是,这将节省我的数据库空间或者工作速度会更快,或类似的东西...但是如果你告诉我有5列而不是只有一列是相同的MySQL当然我会有5列......

非常感谢!

1 个答案:

答案 0 :(得分:1)

答案归结为:MySQL是否必须使用您的数据?

如果所有日期在一列中连接,无论是JSON还是逗号分隔,或者不是,它几乎不受任何MySQL操作的限制。你肯定可以SELECT它,但很难按该列内的任何内容进行搜索,分组或排序。所以,你绝对肯定MySQL soes永远不必看到数据本身,只返回一些包含数据的列,去吧。 好处是不必更改表结构,因为您的数据发生了变化。和列结构非常干净

如果您需要在SQL查询中对其进行过滤,排序,分组或执行任何操作,请将其保留在单独的列中。