当值的数量未知时,将多个值插入单个字段的替代方法

时间:2014-08-04 18:45:49

标签: mysql sql

我对一个表(包含平均100,000行,虽然这些行不断变化)有一个想法,其中一列中的字段将包含多个值(即数千,但具体数字未知并且有所不同) 。但是我读到这应该避免(没有给出理由),所以另一个选择是有一个子列/嵌套表,但我读到这应该避免出于性能原因。所以我考虑创建另一个表并引用它,但这会导致创建数千个表,显然不是解决方案。 所以我问有另一个解决方案吗?

N.B。

  • 由于我处理如此大量的数据速度是一个重要因素。

  • 即使将多个值放入一列下的另一个表中,该表中的列数也会随未知且不断变化而与该数据相关联。

如果这太模糊,需要更多详情,请告诉我。

@Chris Barcroft:对于评论中的格式感到抱歉,第二次幸运:

ID       Parent ID    Dest Port
a           1000          41
b           1000          42
c           1000       43000
d              2          80
e              3       43000

1 个答案:

答案 0 :(得分:1)

更多细节肯定会有所帮助,但基于你所描述的内容,我想我会用两个表来做这个:第一个表代表这个父实体是什么,它的结构并不是真的物。第二个代表所有这些随机值,并且有四列:

id 
parent_id
attribute_name
attribute_value

然后,您可以将任意数量的这些属性与父实体相关联。这会给你提供你想要的吗?