我的 SQL Server 中有一个表,我在其中“暂存”了从我们的 ERP 系统中提取的数据仓库。
从这个临时表(表名:DBO.DWUSD_LIVE)中,我构建了我的维度并加载了我的事实数据。
示例 DIMENSION 表称为“SHIPTO”,此维度具有以下列:
"shipto_id
"shipto"
"salpha"
"ssalpha"
"shipto address"
"shipto name"
"shipto city"
现在我有一个 SSIS 包,它在上述列中执行 SELECT DISTINCT 以检索“唯一”数据,然后通过 SSIS 包我将“shipto_id”代理键分配给。
我当前的 TSQL 查询的一个例子是:
SELECT DISTINCT
"shipto", "salpha", "ssalpha", "shipto address", "shipto name", "shipto city"
FROM DBO.DWUSD_LIVE
这很好用,但不是“快速”,某些维度有 10 列,并且对这些维度进行不同的选择并不理想。
在这个维度中,我的“业务键”列是“SHIPTO”、“SALPHA”和“SSALPHA”。
所以如果我这样做:
SELECT DISTINCT
"shipto", "salpha", "ssalpha"
FROM DBO.DWUSD_LIVE
它产生与以下相同的结果:
SELECT DISTINCT
"shipto", "salpha", "ssalpha", "shipto address", "shipto name", "shipto city"
FROM DBO.DWUSD_LIVE
有没有更好的方法来做这个 TSQL QUERY?我需要所有列,但只需要业务关键列上的 DISTINCT。
感谢您的帮助。
下面是我的项目如何在 SSIS 中设置的图像,维度是 SCD 1。