ssis包用于通过其他表的值检查条件

时间:2014-07-03 09:51:51

标签: sql-server ssis

我有像 -

这样的查询
select work_Id, startdate,work_per from Work a
where work_per is not null
and StartDate = (select max(StartDate) from Work b where a.work_Id=b.work_Id)

我想在ssis中为此查询创建一个包。 我在给予条件时面临问题。

select max(StartDate) from Work b where a.work_Id=b.work_Id.

此处我正在检查a.work_Id's列的值b.work_Id。 我真的不知道如何在ssis中检查它。我试过条件拆分,但它只过滤一个表的值。 我不想在包中使用任何查询.. plz给出一些建议..

1 个答案:

答案 0 :(得分:0)

您可以使用MERGE JOIN转换来实现此目的。它将有两个输入。

1)select work_Id, startdate,work_per from Work a where work_per is not null

2)select work_Id,max(StartDate) as StartDate from Work b group by b.work_Id

这两个输入将在Work_ID和Start_Date的MERGE JOIN中连接。 希望这会有所帮助.. !!

谢谢, Swapnil