如何在SSIS中的派生列中使用Case表达式

时间:2016-02-01 11:04:04

标签: sql ssis business-intelligence

我有像这样的文件数据

Val     type 
7000    Main
7000.1  Spouse
7000.2  Child
7000.3  Child
7000.4  Child
8000    main
8000.1  Spouse

在Sql中我编写了Case Condition

Select CASE WHEN SUBSTRING(val,CHARINDEX('.',val))= 0 THEN 'main'
CASE WHEN SUBSTRING(val,CHARINDEX('.',val))= 1 THEN 'Spouse'
ELSE 'Child'

所以它会给 主要没有十进制值 配偶和休息1是孩子 但是如何为SSIS包中的派生列编写相同的条件

1 个答案:

答案 0 :(得分:0)

我觉得这样的事情。

FINDSTRING(val,".",1) == NULL(DT_WSTR,10) ? "Main" : SUBSTRING(val,FINDSTRING(val,".",1)+1,1) == "1" ? "Spouse" : "Child"