Ssis
如何在 SSIS 中將 Zeros ( 0 ) 更改為 NULL?
我想將一些零更改為
NULL
使用 SSIS 2008。在這種情況下,我嘗試了“條件拆分”,其中我test
使用以下表達式設置了有問題的列:REPLACE((DT_WSTR,8)test,"0", NULL(DT_STR,10,1252))
但這似乎不對。表情是紅色的。
我得到錯誤:
數據類型“DT_WSTR 和“DT_I8”與條件運算符不兼容…
創建列表時出錯
$$ Derived Column 9 [141128 $$]:嘗試查找名為“NULL”的輸入列失敗,錯誤程式碼為 0xC0010009。在輸入列集合中找不到指定的輸入列。 創建列表時出錯
$$ Derived Column 9 [141128 $$]:嘗試解析表達式“REPLACE(PLZ,“0”,NULL)”失敗並返回錯誤程式碼0xC00470A2。無法解析表達式。它可能包含無效元素或格式不正確。也可能存在記憶體不足錯誤。 創建列表時出錯
$$ Derived Column 9 [141168 $$]: 嘗試解析表達式 “$$ PLZ $$==0 ? 空(DT_I8,10):$$ PLZ $$” 失敗。表達式可能包含無效標記、不完整標記或無效元素。它可能格式不正確,或者可能缺少必需元素的一部分,例如括號。 創建列表時出錯
$$ Derived Column 9 [141168 $$]: 無法解析表達式“$$ PLZ $$==0 ? 空(DT_I8,15):$$ PLZ $$"。表達式無效,或者存在記憶體不足錯誤
樣本數據:
test test ideal 0 NULL 120 120 304 304 100 100 222 222 520 520 0 NULL 0 NULL 10 10 11 11 0 NULL
使用
Derived Column
帶有表達式的轉換[test] == 0 ? NULL(DT_I8) : [test]
您可以使用 nullif 函式:
select nullif(test, 0) as test from ...
這是標準 SQL,但我不確定
ssis
.