【发布时间】:2023-10-28 19:36:01
【问题描述】:
以下 SQL 表达式的 SSIS 等效表达式(派生列组件)是什么
cast(CASE WHEN len(cast(KPI as varchar(3))) > 2 THEN
CASE substring(cast(KPI as varchar(3)),3,1)
WHEN 1 then left(cast(KPI as varchar(3)),1) + 'a'
WHEN 2 then left(cast(KPI as varchar(3)),1) + 'b'
WHEN 3 then left(cast(KPI as varchar(3)),1) + 'c'
WHEN 4 then left(cast(KPI as varchar(3)),1) + 'd'
END
ELSE cast(KPI as varchar(3))
END as VarChar(3)) as 'ColumnName'
这里的Kpi列是双精度浮点数据类型...
我在这里观察到的一件主要事情是 SSIS 表达式生成器中缺少 LEFT 字符串函数。
SSIS 专家请看一看..
【问题讨论】:
-
你说的SSIS表达式是什么?您想在哪个元素中使用此代码?您可以将此代码转换为 SSIS 派生列代码,但这就是重点,如果您可以在数据库源元素中使用此代码...
-
我需要在派生列组件中使用它
-
我不建议你在派生列上使用它。为什么不能在源查询中执行此操作。
标签: sql-server sql-server-2008 ssis ssis-2008