簡體   English   中英

檢查是否滿足條件,然后進行查找

[英]check if condition is met then do a lookup

我正在嘗試做並行工作,其中我檢查一列的值,如果它符合某個條件,它將返回某個值,如果不匹配,它將檢查另一個條件,如果與該條件匹配,它將執行一個抬頭。 我不確定將條件放在參考鏈接還是輸出鏈接上。

這是希望使它更清晰的某種偽代碼:

if (table1.colname = NULL OR table1.colname = '')
  then '999'
else 
  if table1.column = 0
     then do a lookup on table2.colname for '1' return table2.colname2
  else
     do a lookup on table2.colname for '2' return table2.colname2
  if value is not found then '999'

我是datastage的新手,因此非常感謝您提出任何意見或想法。 如果您需要其他說明,請告訴我。 謝謝。

使用Transformer或Filter根據條件將記錄分為三個鏈接

第一個鏈接:包含空值或空值的記錄第二個鏈接:包含值零的記錄第三個鏈接:否則(其余記錄)

然后根據需要分別在第二個和第三個鏈接上進行查找,然后將第一個鏈接的輸出和“查找”的輸出合並到一起使用變壓器將第四個條件應用於不匹配的記錄

     Or

在變壓器中創建一個新字段,其中寫入條件如下

如果NullToEmpty(table1.column)=''然后是“ DefaultValue”(確保u所分配的值在參考表中不具有匹配的記錄)

否則,如果table1.column = 0,則為“ 1”;否則,如果table1.column = 1,則為“ 2”,否則為“ Defaultvalue”

然后使用table2.colname2在此新字段上進行查找,並在轉換器中為未找到的記錄分配“ 999”

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM