我有兩個數據集。一種是類似於下面的示例SSIS合併雖然?
Table1
Key StartDate EndDate Name Data_1
1 2017-01-01 2017-01-03 Billy G 58uf
2 2017-01-10 2017-01-12 S Dogg 4940
我也有一個標準的日期維度稱爲dbo.DimDate維度表的數據。我如何將日期維度合併到Table1上,以便Table1爲每個記錄包含StartDate和EndDate之間每天的記錄?
期望的結果是這樣的:
Table2
Key StartDate EndDate Name Data_1 Day
1 2017-01-01 2017-01-03 Billy G 58uf 2017-01-01
1 2017-01-01 2017-01-03 Billy G 58uf 2017-01-02
1 2017-01-01 2017-01-03 Billy G 58uf 2017-01-03
2 2017-01-10 2017-01-12 S Dogg 4940 2017-01-10
2 2017-01-10 2017-01-12 S Dogg 4940 2017-01-11
2 2017-01-10 2017-01-12 S Dogg 4940 2017-01-12
這需要在一個SSIS包來完成。我不認爲一個簡單的MERGE JOIN會起作用,因爲1)Date維度沒有與Table1中的任何內容匹配的鍵,2)我需要它爲每個日期添加Day BETWEEN StartDate和EndDate
If我做了一個執行SQL命令,那麼我如何從兩個單獨的表中獲取它?
最後的記錄從你期望的結果,爲什麼'EndDate'是「2017年1月11日」而不是「2017年1月12日」? – LONG
對不起,這是一個錯字 – james5
如果沒有共同的列(或鍵)加入,不能使用'合併加入',我會考慮另一種方法來做到這一點 – LONG