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