2017-09-13 61 views
0

在talend DI,tmap組件中,當另一個列值不在53和100之間,並且另一個列值不等於「POOL」時,我需要將值從源文件傳遞到目標文件。
我需要檢查這些條件。任何人都可以幫助解決這個問題?如何檢查talend tmap中的列值?

回答

0

在tMap組件目標模式的過濾器部分,寫入

(row1.column2> 53 & & row1.column2 < 100)& &(!row1.column3.equals( 「池」))

並將row1.column1分配到目標模式列。

希望這有助於...

+0

對不起,我SHD不給這個目標架構組件,因爲我需要檢查很多條件 – imssurya

+0

我已經試過此評論已經是有沒有其他方法可以解決這個問題? – imssurya

+0

是的,您也可以在特定的目標列中寫入相同的條件。使用三元運算符。 (row1.column2> 53 && row1.column2 <100)&&(!row1.column3.equals(「POOL」))? row1.column1:null – PreetyK

0

你可以嘗試這樣的....

安排TMAP的設置,

enter image description here

在表達式過濾條件是

!(row1.newColumn >53 && row1.newColumn<100)&& (!row1.newColumn1 .equals("POOL"))

然後u能得到所需的結果..

在這裏,我採取以下作爲輸入..

20; A

30; POOL

40; C^

50; d

60; POOL

100; G

110;游泳池

後來我造成的,

enter image description here