mysql - 在MySQL数据库中,存储数组的最佳方法?

部分我的应用包括歌曲的音量自动化。

音量自动化采用以下格式描述:


[[0,50],[20,62],[48,92]] 

我认为这个数组中的每项都是一个"数据点",包含歌曲中的位置和包含0-100的音量的第二个值。

但是,需要允许用户将该自动化保存到数据库中以便以后调用。

数据点可以是无限(尽管在现实中,不应该真正超过40-50,最多只有10个),

我该如何处理数据? 是否应按原样存储在文本字段中? 或者我应该以某种方式进行预先处理以获得最佳结果?

在MySQL中什么数据类型最适合用来存储数组?

时间:

绝对不是text字段,但可能是varchar -- ,除非你想利用数据库意义上的数据 - 以后要统计数据,否则我不建议去解析结果,并且将它们存储在单独的列中。

如果你从未问过自己"用户使用的平均音量是多少?"那么就不用费心去解析它了。

如果你想要使用serialize函数,你可以使用serialize函数。 如果你将要使用JavaScript中的值,那么JSON编码可能是最好的(很多语言都知道怎么解码),

祝你好运

如果检索行时速度最重要,那么创建一个新表,并且使它专用于保存数组的索引,使用整数的数据类型,并使每行表示数组的索引,您必须创建另一个将这些绑定在一起的数字列,以便您可以使用SQL查询重新组装数组。

这样你可以帮助MySQL加快访问速度,如果只需要数组的某些部分,只要更改SQL查询中的范围,你就可以根据需要重新组合数组。

...