在 SSIS 中,我想使用条件拆分来过滤 Country ="USA"。这可以正常工作并过滤表。但是现在我想在结果 OLE DB 目的地中将“USA”解码为“United States Of America”。我在哪里可以给出条件。
问问题
848 次
1 回答
1
选项1
如果您只有 1 或 2 个值要解码,请添加派生列转换并使用诸如County=="USA"? "United States of America" : "Unknown"
嵌入超过 2 个三元运算符之类的逻辑?:
可以提高可读性,从而成为维护的噩梦
选项 2
使用查找转换来提供您的翻译。如果您没有真正的映射表,只需创建一个派生表,例如
SELECT D.Country, D.Name
FROM
(
SELECT 'USA', 'United States of America'
UNION ALL SELECT 'CAN', 'Canada'
UNION ALL SELECT 'ROU', 'Romania'
) D (Country, Name)
然后将国家映射到国家并选择名称
选项 3
使用脚本任务来执行相同的翻译,除了我会使用类似SortedDictionary from的东西System.Colllections.Generic.SortedDictionary<string,string>
进行查找。
于 2013-06-10T13:54:00.587 回答