【问题标题】:SQL Select to SSIS Derived ColumnSQL 选择到 SSIS 派生列
【发布时间】:2019-06-20 05:34:35
【问题描述】:

我有这个选择查询。

SELECT REPLACE(LTRIM(REPLACE('000010A', '0', ' ')),' ', '0')

'000010A'= Customer_And_Partner_Account_Nr 

我想在通过 SSIS 在 SQL 表中加载数据时创建一个新列。

SELECT REPLACE(LTRIM(REPLACE('000010A', '0', ' ')),' ', '0')

请帮助我在 SSIS 中创建派生列的表达式。

【问题讨论】:

    标签: sql sql-server ssis expression etl


    【解决方案1】:

    您是否考虑过使用脚本组件而不是派生列?

    在脚本组件中,您可以重载ProcessInputRow 事件并在列上使用TrimStart("0"c) 方法来去除前导零。

    它还应该提高流的性能,因为 (1) 它只需要单个操作,并且 (2) 它只扫描输入字符串的一部分。

    【讨论】:

      【解决方案2】:

      您可以使用相同的表达式,但将单引号替换为双引号:

      REPLACE(LTRIM(REPLACE([Customer_And_Partner_Account_Nr], "0", " ")," ", "0")
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-04-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多