我需要有关如何在我的数据仓库中构建重叠日期范围的帮助。我的目标是以允许对报告进行日期级别过滤的方式对数据进行建模。
我有维度—— DimEmployee、DimDate和一个名为FactAttendance的事实。这个事实中的记录存储如下——</p>
用图形表示——</p>
需要根据这些数据创建报告,最终用户可以通过选择日期范围来过滤它。假设用户选择日期范围 D1 到 D20。在进行此选择时,用户应该看到至少一名员工休假天数的值。在这个特定的示例中,我应该看到底部添加了浅蓝色段,即 11 天。
我正在考虑的一种方法是在每个员工的每个日期为每个休假存储一行。这种方法的唯一问题是它会以指数方式增加事实表中的记录数。此外,事实上还有其他列会有冗余数据。
仓库中通常如何处理此类重叠的日期/时间问题?有没有更好的方法不涉及插入大量行?