我在T-SQL中进行了循环转换:
SELECT [FIELD_A] = case when CHARINDEX('-', FIELD_B)>0 then LEFT(FIELD_B,CHARINDEX('-', FIELD_B)-1)
else FIELD_B end,
如何使用SQL Server Integration Services 2014将其放入Derived Column对象中的表达式?
问候!!!
答案 0 :(得分:2)
派生列转换使用SSIS表达式语法。这个的语法可以这样:
FINDSTRING(FIELD_B, "-", 1) > 0 ? LEFT(FIELD_B, FINDSTRING(FIELD_B, "-", 1)-1) : FIELD_B
我还没有测试过它,但它应该让你走上正确的道路。走过它:
Findstring参考:https://docs.microsoft.com/en-us/sql/integration-services/expressions/findstring-ssis-expression
条件参考:https://docs.microsoft.com/en-us/sql/integration-services/expressions/conditional-ssis-expression