【问题标题】:How to make an IF Statement in SSIS如何在 SSIS 中制作 IF 语句
【发布时间】:2017-10-18 20:06:47
【问题描述】:

如何在 SSIS 中创建如下条件?
我知道如何在 SQL Server 中创建它

例子:

IIF(LEFT(MAT,1) = '"', NULL,  REPLACE(MAT,'""',''))

【问题讨论】:

  • 您可以使用派生列任务。在那里你可以写LEFT(MAT,1) == '"' ? NULL : REPLACE(MAT,'""','')

标签: sql sql-server ssis ssis-2012


【解决方案1】:

«boolean_expression» ? «when_true» : «when_false»

LEN([手机]) == 9 ? ("0" + [手机]) : [手机]

【讨论】:

    【解决方案2】:

    SET MAT = LEFT(MAT,1) == '"' ? NULL : REPLACE(MAT,'""','');

    IFF 语句适用于基于条件的赋值

    IIF() 语句具有以下format:

    =IIF( Expression to evaluate,
             what-to-do when the expression is true,
             what-to-do when the expression is false )
    
    • Parameter1:应该是BooleanExpression。
    • Paremeter2:当Expression 为true 时将返回此值。
    • Paremeter3:当Expression 为false 时,将返回此值。

    【讨论】:

      【解决方案3】:

      SSIS 中的语法是这样的:[condition] : [value if true] ? [value if false] 话虽如此,你可以这样做......

      (MAT,1)='' : NULL ? REPLACE(MAT,'""',''))

      【讨论】:

      • 它在派生列中的 dobble 等号 - 这就是你写它的方式。就像我开始评论一样:示例是AnimalName == "Elephant"? "savannah": "unknown"
      猜你喜欢
      • 1970-01-01
      • 2011-08-04
      • 2015-01-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多