我在我的SQL Server中有一個表格,在這裏我將我的數據倉庫數據從我們的ERP系統中提取出來。SQL數據倉庫,需要幫助使用TSQL SELECT或更好的替代方法填充我的DIMENSION?
從此登臺表(表名:DBO.DWUSD_LIVE),我構建我的維度並加載我的事實數據。
一個例子維度表被稱爲「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查詢?我需要所有列,但只需在業務鍵列上使用DISTINCT。
您的幫助表示讚賞。
下面是我的項目是如何在SSIS設置的圖像時,尺寸是SCD 1
如果有人知道一個更好的方式來填充我的維度從臨時表基於業務密鑰和代理鍵,請讓我知道。 – exxoid
任何人有任何建議嗎? – exxoid