我有一个 OLAP 结构化的 sql server 数据库。我的事实表是销售。
我有 2 个维度和 1 个事实表。尺寸如下:
Product (ProductID, ProductName, ProductDescription, ListPrice)
Promotion (ProductID, Discount, StartDate, EndDate)
事实表:
Sales (SalesID, CustomerID, ProductID, Date, ProductReturned)
请注意,促销维度没有自己的唯一标识符。我相信四元素元组是~复合主键。
首先,我想创建一个名为 的主键PromotionID
,将其存储在这个维度中。接下来,我想遍历销售事实表中的每个观察结果,如果观察日期在促销维度中的范围StartDate
->EndDate
内,我想将外键属性分配为PromotionID
. 最后,我想从 FKPromotionID
不是的销售事实表中选择所有观察结果NULL
。
两个问题:
- 我如何实现这种影响?
- 上述步骤是实现这一目标的最简单方法 - 还是有更简单的方法?