使用sql loader减去两个日期

时间:2018-10-25 12:41:43

标签: sql-loader

我有两个约会。一个是 cur_phy_date ,下一个是 Last_Phy_Date 。但是这里的问题是平面文件只有一个日期,即 cur_phy_date ,但是要计算 Last_Phy_Date ,我需要从SQL LOADER控件中的 cur_phy_date 减去6个月文件。 我的 cur_phy_date 的示例日期格式为:2018MAY01。

是否可以从cur_phy_date减去4或5个月,并以与 cur_phy_date

相同的格式获取 Last_Phy_Date

1 个答案:

答案 0 :(得分:0)

希望您有能力使列成为正确的DATE数据类型。如果不是,那么,我们所有人都必须在某一点或另一点进行不良设计。无论哪种方式,您都需要通过使用前一个冒号引用当前日期,将当前日期转换为正确的日期,减去6个月,然后转换为所需的格式。这是您的控制文件条目的外观:

到适当的日期:

Last_Phy_Date  date "MM/DD/YYYY" "TO_CHAR(ADD_MONTHS(TO_DATE(:cur_phy_date , 'YYYYMONDD'),-6), 'MM/DD/YYYY')",

到VARCHAR2:

Last_Phy_Date  CHAR "TO_CHAR(ADD_MONTHS(TO_DATE(:cur_phy_date , 'YYYYMONDD'),-6), 'YYYYMONDD')",