哪个更好的性能,使未使用的列为null或填入值

Jam*_*mes 1 sql sql-server

我有一个表uniqueidentifier只有一些行使用的列.

以下是一个好主意:

  • 使该列可以为空并使未使用的行'uniqueidentifier为null?
  • 或者不使列可以为空并为所有行填写GUID值?

SELECTuniqueidentifier列上的查询会有任何性能差异吗?那磁盘空间呢?空值是否占用相同的空间量?

d89*_*761 7

如果您使用的是SQL Server 2008+,则可能需要考虑使用稀疏列.它针对存储主要包含空值的列进行了优化.