在数据阶段将正常日期(YYYY-MM-DD)转换为儒略日期

时间:2019-05-22 13:20:34

标签: datastage julian

是否有将正常日期转换为儒略日期的功能。

我在转换器中使用了JulianDayFromDate函数,但没有得到预期的输出。

样本输入:

Date -- 2013-02-02 

输出应为:

Julian Date-- 113033

(在数据库中,我们可以执行以下查询)

select to_date(1900000+113033,'YYYYDDD') from dual

但是如何在Datastage中进行转换...?

2 个答案:

答案 0 :(得分:0)

也许您的期望是错误的- 2456326是2013-02-02的朱利安日-DataStage函数起作用。

查看Wikipedia文档以进行定义和计算

不确定您的113033是什么,但不是显示的日期的儒略日或儒略日。

要实现所需的功能,您必须自己进行计算。 除了年份计算,您还可以使用YeardayFromDate来获取年份中的日数。 所以最终它将是

YearFromDate('2013-02-02') * 1000 - 1900000  +   YeardayFromDate('2013-02-02')

答案 1 :(得分:0)

数据库对儒略日期使用不同的“零日”值。没关系关键是可以对它们进行日期(天)算术运算。 要进行转换,请使用DateFromJulianDay()函数。