我有一个包含25列的表,其中20列可以为某些(30-40%)行提供空值.
现在拥有20个空列的行的成本是多少?这个可以吗?
现在拥有20个空列的行的成本是多少?这个可以吗?
要么
有另一个表来存储这20个列并在第一个表中添加ref是一个很好的设计吗?
这样我只会在有值时写入第二个表.
我正在使用sql Server 2005.将来会迁移到2008.
只有20列是varchar,其余是smallint,smalldate
我正在储存什么:
这些列存储它所属的行的不同属性.这些属性有时可以为null.
该表将容纳数十亿行
请评论.
解决方法
您应该描述要存储的数据类型.听起来这些列中的一些应该移动到另一个表.
例如,如果您有多个列代表同一类型数据的多个列,那么我会说将其移动到另一个表另一方面,如果您需要这么多列来描述不同类型的数据,那么您可能需要保持原样.
所以这取决于你的建模.