如何删除ODI 11g中的最后一个etl_date记录?

时间:2018-04-09 13:17:39

标签: oracle oracle11g etl

我是ODI 11g的新手,我使用ODI 11g进行开发报告。 到目前为止一切都很顺利。 但是,我想从决赛桌中删除最后三个月(etl_date)。我怎么能用ODI做到这一点?

DELETE FROM MYTABLE
WHERE ETL_DATE IN (TO_DATE(#ETL_DATE, 'DDMMYYYY'), ADD_MONTHS(TO_DATE(#ETL_DATE, 'DDMMYYYY'), -1), ADD_MONTHS(TO_DATE(#ETL_DATE, 'DDMMYYYY'), -2));

1 个答案:

答案 0 :(得分:1)

有几种解决方案
1)您可以使用上面的代码创建ODI程序,并将其放在界面之前或之后(如您所愿)
2)在删除步骤中自定义IKM模块放置条件 sample step

delete from <%=odiRef.getTable("L","TARG_NAME","A")%> where 1=1
<%=odiRef.getOption("DELETE_FILTER")%>