【问题标题】:How to use IN inside the split task for SSIS package?如何在 SSIS 包的拆分任务中使用 IN?
【发布时间】:2017-11-02 21:36:09
【问题描述】:

我需要在ssis的数据流任务里面根据一个字符串比较来拆分数据流。

例如,在拆分任务中,我使用此代码 "ISNULL(FINDSTRING("a,b,c,d",a,1))",它将返回 true(因为 findstring 函数在这种情况下返回 1)并且它始终为 true,因为即使我使用 "ISNULL(FINDSTRING("a,b,c,d",e,1))" findstring 函数返回 0....

我需要拆分任务中的一些函数,它比较两个字符串并返回真/假,并根据输出拆分数据流...

非常感谢任何建议。 谢谢

【问题讨论】:

标签: sql ssis ssis-2012 ssis-2016


【解决方案1】:

听起来您需要应用一个等效于包含字符串比较的“IF THEN ELSE”的条件表达式。

格式:

布尔表达式?表达式1:表达式2

那个?相当于“then”,“:”相当于“else”。因此,如果 boolean_expression 为真,那么 expression1(真结果),否则 expression2(假结果)。 1 == 1? “真”:“假”

在条件表达式中应用您的示例:

FINDSTRING("a,b,c,d", "a", 1) == 1 ? “真”:“假”

将结果发送到一个变量,然后可以将其应用于数据流拆分,应该会有所帮助。如果您有任何问题,请告诉我。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-16
    • 2022-06-23
    • 1970-01-01
    • 1970-01-01
    • 2015-01-10
    • 1970-01-01
    相关资源
    最近更新 更多