2015-10-29 50 views
0

我在OLEDB數據庫3個表,我日常使用SSIS包到MSSQL服務器提取數據。對於絕大多數的這個數據是好的,並不需要進行修改的時候,而是每月兩次,我得到了,我想用最後一次正確的值或其他一些生成的值來代替短暫空值。有沒有辦法在SSIS中執行此操作,而無需在數據流任務之後使用CTE命令運行多個SQL查詢? CTE在一小時或兩小時之間存在小差距的情況下工作,但如果超過使用CTE的時間則會導致偏離趨勢。SSIS:有一種更簡單的方法嗎?

回答

1

如果你想用最後一個好值替換空值,那麼你可以填充只有最後一個月的關鍵列「具有良好值」的列的緩存,然後通過檢查null來使用條件拆分器查找該值。但是如果列數很少而且數據量不那麼大,則可以這樣做。

但在海量數據的情況下,你必須寫一個函數,並在SQL中使用該功能,其在物有所值的情況下和在惡劣的價值尋找最後物有所值的情況下返回相同的值並返回。

+0

如果你有一個疑問。與像沒有列全情景討論,更新與去年好值的列該列或更新最後良好的價值觀行等 –

+0

好吧,謝謝,我想知道如果任何在SSIS工具箱中的東西能做到這一點,但它看起來像SQL查詢是要走的路。 – Mnoi

相關問題