Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SSIS 2008数据流中的派生列转换编辑器未按预期进行筛选_Ssis - Fatal编程技术网

SSIS 2008数据流中的派生列转换编辑器未按预期进行筛选

SSIS 2008数据流中的派生列转换编辑器未按预期进行筛选,ssis,Ssis,我试图使用派生列转换任务中的表达式过滤数据流中的特定字符串。 我试图过滤掉的字符串是 0 0 0 0 然而,输出的不是NULL,而是 0 0- 0- 0 我已经尝试了许多表达式,下面是一些示例 [MSTUB-xInt_Only-Rev-Dt] == "0" + " " + "0" + " " + "0" + " " + "0" ? NULL(DT_WSTR,10) : SUBSTRING([MSTUB-xInt_Only-Rev-Dt],5,4) + "-" + SUBSTRING([MST

我试图使用派生列转换任务中的表达式过滤数据流中的特定字符串。 我试图过滤掉的字符串是

0 0 0 0
然而,输出的不是NULL,而是

0 0- 0- 0
我已经尝试了许多表达式,下面是一些示例

[MSTUB-xInt_Only-Rev-Dt] == "0" + " " + "0" + " " + "0" + " " + "0" ? NULL(DT_WSTR,10) : SUBSTRING([MSTUB-xInt_Only-Rev-Dt],5,4) + "-" + SUBSTRING([MSTUB-xInt_Only-Rev-Dt],3,2) + "-" + SUBSTRING([MSTUB-xInt_Only-Rev-Dt],1,2)

以下是转换任务的输入
仅MSTUB-xInt_-Rev-Dt
0
1052013

以下是输出
仅MSTUB-xInt_-Rev-Dt
0-0-0
2013年5月1日

似乎存在识别0之间的空格的问题?
非常感谢您的指导。

字符串前后可能有空格;在比较之前尝试修剪,例如修剪([MSTUB-xInt_Only-Rev-Dt])==“0”

下面是一个输入数据的示例,字符串后面或前面可能有空格;在比较之前尝试修剪,例如修剪([MSTUB-xInt_Only-Rev-Dt])==“0 0 0”…谢谢Jayvee,我会尝试的Hi Jayvee,完美…修剪解决了问题,谢谢这很好。我把答案写在答案框中,这样你就可以接受它并关闭问题。或者在“没有空格”的空格中进行替换,那么你应该只剩下“0000”
[MSTUB-xInt_Only-Rev-Dt] == "00000000" || [MSTUB-xInt_Only-Rev-Dt] == "0 0 0 0" || [MSTUB-xInt_Only-Rev-Dt] == "0 0- 0- 0" ? NULL(DT_WSTR,10) : SUBSTRING([MSTUB-xInt_Only-Rev-Dt],5,4) + "-" + SUBSTRING([MSTUB-xInt_Only-Rev-Dt],3,2) + "-" + SUBSTRING([MSTUB-xInt_Only-Rev-Dt],1,2)