我有 3 个销售数据表,已转换为 4 个维度表和 1 个事实表。
我已经正确填充了所有内容,并且希望在我的 Fact 表中显示“每日销售”和“每周销售”。
我原来的3张表如下:
Order
(order# (PK), product-id (FK), order-date, total-order, customer# (FK))
域是数字、数字、日期、货币、数字Product
(product-id (PK)、prod-name、unit-cost、manufactur-name)
域是 numeric、nvarchar、money、nvarchar。Customer
(客户# (PK)、客户名称、地址、电话#)
域是 Number、nvarchar、nvarchar、nvarchar
数据仓库的 Star Schema 链接在这里:
所以我在每个表中只有 10 条记录(很小!),现在只是在测试概念。Fact 表中的“daily-order”很容易从 Order 表中的“total-order”翻译而来。我的困难是获得每周的总数。我使用派生列和表达式 "DATEPART("wk",[order-date])" 在时间维度中创建我的周列。
所以我想我的问题是,我如何从这一点上获得每周销售额?我的第一个猜测是在用于加载事实表的查找序列结束后使用另一个派生列。我的第二个猜测是......在stackoverflow上寻求帮助。任何帮助将不胜感激,我将提供所需的任何信息!提前致谢!
作为记录,我尝试按照前面的描述创建派生列,但无法找出可以接受的语法......
编辑我想按产品级别列出每周销售列,并且当我使用 DATEPART 导出周列时,我不需要最后 7 天,而只需要每周的总数。我的销售数据仅持续 2 周,因此我的事实表应该列出 1 个总共 7 次,第二个总共列出 3 次。我可以从原始 Order 表或我的 DW 环境中的表派生它。最好是后者。需要注意的是,我主要限于 SSIS 及其工具(有“执行 SQL 语法”工具,所以我仍然可以使用查询)