首页 > 解决方案 > 如何在查找期间对查找目标应用转换?

问题描述

我的源任务具有从 csv 文件读取的以下列: Sale_id、sale_date、order_no、sale_amt

随后是查找销售 sql 表(具有相同的列名)的查找任务,并且连接位于 order_no 列上。

问题是 sql sale 表中的 order_no 数据的值类似于“ABC-12345”、“WXYZ-32111”(订单号前面有几个字符)。

在 csv 中,有 '12345' 没有任何前置字符。

因此我无法进行查找,因为没有直接匹配。有什么方法可以(暂时)从销售 sql 表数据中删除字符和连字符以执行查找连接。

标签: ssis

解决方案


第一个数据流任务- 通过 SQL 命令使用平面文件源查找和 OLE DB 源,并执行以下查找。

select Sale_id, sale_date, order_no, sale_amt,
substring(order_no,charindex('-',order_no,0),len(order_no)) as [key]
from sql sale table

使用 [Key] 进行查找转换。这些函数应提供您正在寻找的数值。


推荐阅读