ssissplitconditional-statements

SSIS Conditional Split - multiple conditions per output


Is it possible to use the conditional split to score a row based on 3 criteria?

I'd rather not create a tree if I can avoid it

Essentially to do something like this (note all outputs are from a single conditional split)

Output 1 (Score 0)
Field1 == 0 && Field2 == 0 && Field3 == 0

Output 2 (Score 1)
(Try1 == 1 && Try2 == 0 && Try3 == 0)||
(Try1 == 0 && Try2 == 1 && Try3 == 0)||
(Try1 == 0 && Try2 == 0 && Try3 == 1)

Output 3 (Score 2)
(Field1 == 1 && Field2 == 1 && Field3 == 0)||
(Field1 == 1 && Field2 == 0 && Field3 == 1)||
(Field1 == 0 && Field2 == 1 && Field3 == 1)

Output 4 (Score 3)
Field1 == 1 && Field2 == 1 && Field3 == 1

Of course outputs 1 and 4 are easy to achieve but can I create outputs 2 and 3 without creating a tree system of conditional splits to assess each try on each row?

Thanks very much


Solution

  • Before the Conditional Split shape put in a Derived Column shape which creates a new column called Score with the following expression:

    (DT_I4)[Field1] + (DT_I4)[Field2] + (DT_I4)[Field3]
    

    Then in your Conditional Split the four branches compare the Score column like so:

    Score == 0
    Score == 1
    Score == 2
    Score == 3