2016-04-12 60 views
0

我是informatica软件中的新成员。现在我有两张桌子,说AAABBB表。Informatica:比较两个表格之间的日期字段

AAA: last_post_date

BBB: Trx_No, Field1, Field2, trx_date

我想BBB表移动到该trx_date必须大于last_post_date更大的目标表。我不能使用木匠转换,因为它不具有>,<,> =和< =运算符。如果我想使用查找转换,如何将它用于这种情况或任何其他方式可以帮助我做到这一点。我搜索了很多关于查找转换的网站,但仍不知道如何使用它。

请帮忙。

谢谢!

+0

'AAA'只有1行包含'last_post_date'或每行有多行? – Utsav

+0

是的。它只是一排。 AAA仅包含Id和last_post_date字段 – Tisa

回答

0

我假设AAA只有1行包含last_post_date。如果这两个表在同一个数据库中,你可以使用来源预选赛覆盖

select Trx_No, Field1, Field2, trx_date from BBB where trx_date > last_post_date 

但是,如果两个表在不同的数据库和/或你不能够在它们之间建立DB连接,然后使用下面的解决方案。

  • 对于两个源的源限定符后,使用Expression转换。
  • 添加输出端口都表达转变,说o_Dummy和硬编码值1(用于转换)
  • 使用乔伊纳和使用normal join。加入条件将是o_Dummy = o_Dummy1
  • 之后它使用filer筛选记录,其中trx_date > last_post_date

这将是你的流量。

SQ_AAA -> Expression -> Joiner -> Filter -> Target 
SQ_BBB -> Expression -^ 
0

使用Source限定符来读取BBBAAA数据,随后查找和过滤戕的条件trx_date>last_post_date

理想情况下,您可以使用从Expression变量端口获取的未连接查找,例如v_LastPostDate = IIF(ISNULL(v_LastPostDate), LKP.LoopkupToAAA, v_LastPostDate) - 这将确保您仅执行一次查找。不是说这对单个值有很大影响,但我认为我会分享一些很好的练习:)