SSIS - 有没有办法从平面 table 中过滤数据?

SSIS - Is there a way to filter data from a flat table?

我有一个总分类帐交易记录到各个日记帐预订。我正在研究一个过程,使用 tables 和位于其他地方的其他信息从下往上重建这些预订。首先,我有一个 SSIS 包,可以提取 3-4 个不同的 "Divisions" 数据。

在一种情况下,有超过 60 万行,我最多需要 5 万行。将 600k 加载到 table 需要一段时间。我正在寻找一种方法来阻止它。如果我在 SQL 服务器上这样做,我会做类似的事情:

SELECT * FROM C601
WHERE (COST_CENTER = 5U AND ACCOUNT = 1100001)
OR (COST_CENTER = 5U AND ACCOUNT = 1300001)

我总共有大约 12-13 个 WHERE 项目,但会减少到原始项目的 10%。在我加载 SQL 服务器 table 之前,有没有一种方法可以过滤 SSIS 中加载的平面文件,项目数量要少得多,就像上面的 SQL 一样?

使用条件拆分转换

第一种方法

添加类似的表达式:

[COST_CENTER] = "5U" && ([ACCOUNT] = 1100001 || [ACCOUNT] = 1300001)

第二种方法

或者您可以添加两个拆分表达式,如下所示:

COST_CENTER]!= "5U" || [ACCOUNT]!= 1100001

[COST_CENTER] != "5U" || [ACCOUNT] != 1300001

然后您可以使用条件分割默认输出来获得想要的结果。