can ssis脚本组件输出一个数组

时间:2015-06-15 07:08:45

标签: ssis

我有一行包含6列:id,c1,c2,c3,c4,c5

我想做什么:

对于每个id,进行序列检查:c1-c2,c2-c3,c3-c4,c4-c5,对于彼此不相等的任何一对,分配一个额外的标志来指示。

我正在尝试在ssis中使用脚本:

创建一个数组c [] = {c1,c2,c3,c4,c5}和一个数组标志[]

 for(i=1,if<=4,i++)
        for(j=i+1,j<=5,j++)
            if c[i] != c[j]
                Flag[i] = 1

这样,对于c1,c2,c3,c4将输出4个标志,用于1个id,更改粒度

我能这样做吗?

SPSS可以像这样做

STRING标志(A1)

EXECUTE。

VECTOR c = c1 TO c5。

LOOP#i = 1到4。

LOOP #a =(#i + 1)TO 5。

  • DO IF c(#a)!= c(#i)

  • COMPUTE flag = 1。

  • BREAK。

  • END IF。

  • END LOOP。

END LOOP。

EXECUTE。

1 个答案:

答案 0 :(得分:0)

我将使用CASE语句在SQL中生成四个标志列:

CASE c1 = c2 THEN 0 ELSE 1 END AS Flag1
CASE c2 = c3 THEN 0 ELSE 1 END AS Flag2

等等。