1

我有一个查询解释如下......,

1.My DB2 table column is in INTEGER format (it has the date value in Julian date format - YYYYDDD)

2. After unload this date into a flat file, the result is in hexa decimal format.(4 bytes occupaid)

3. I have a requirement to compare this date with (Current Julian date+7days) and write the corresponding recods into a File. 

4. So, when I am comparing the Hexa decimal Input date with Current Julian date+7days (DATE3P+7), I am getting MAxcc=0 but I am not getting required output. 

5. What I identified the problem is that the input date should also be in packed decimal format. 

任何人都可以让我知道如何在卸载时将表格值转换为压缩十进制,或者请建议其他方法来获取它。

例如:- 1. 卸载儒略日期 (YYYYDDD) [卸载后将采用十六进制格式]。2.与当前儒略日期+7天比较。排序字段=复制外部文件=1,包括=(1,4,PD,LT,DATE3P+7)外部文件=2,保存

在此先感谢 Rajasekhar Jannu。

4

1 回答 1

1

相信这些替代方法,工作......

  • 不要以十六进制类型获取日期,而是将其卸载为 YYYYDDD 格式的日期,DATE3 将为您提供 YYYYDDD 中的儒略日期。现在这两者都采用兼容的格式来比较和条件。

    DB2 有许多标量函数来提供儒略日期以及数字日期。我相信标DIGITSJULIAN函数会做......

    参考这个DB2 Scalar Functions

  • 如果您无法以上述方式卸载表格,另一种方法是操作卸载文件,因此需要使用 DFSORT 将十六进制格式的日期转换为 YYYYDDD 数字格式。然后 DATE3 将帮助您获取一周前的数据。DFSORT 参考已被共享。
于 2011-10-25T02:18:00.800 回答