我正在一个项目中,我们跟踪一个人在公司的历史。该表具有StartDate和EndDate列。
我们不会总是知道一个人的历史记录的开始日期。
对于一个人当前的工作记录,结束日期显然是未知的。
我的问题:在存储,性能,查询,一般可用性等方面是否更好...
a)使这两个列都可为空吗?
或
b)将两列都设置为NOT NULL,并在未知时将StartDate设为最小值(1/1/1753),在未知时将EndDate设为最大值(12/31/9999)?
我了解如何通过两种方法判断记录是过去,现在还是将来。
我已经读过Null vs Empty String上的文章,但这有点不同,它是两个经常一起查询的关联字段。