将 JDE 日期格式转换为 DB2

Posted

技术标签:

【中文标题】将 JDE 日期格式转换为 DB2【英文标题】:Converting the JDE Date format to DB2 【发布时间】:2013-08-09 03:32:03 【问题描述】:

我想将存储在数据库中的 JDE 时间值转换为 numeric(6),并且我想使用格式或时间转换将其转换为 ibm DB2 中的时间值?

例如 JDE 时间值 = 130313 我期望的结果是 13:03:13(小时、分钟、秒)

日期还可以,我可以使用 从 sysibm.sysdummy1 中选择当前日期

但我认为时间只是将值从 6 个数字格式化为小时:分钟:秒

【问题讨论】:

【参考方案1】:

假设您将 TIMSEP 设置为 ':',您可以使用

    time( insert(insert( digits(dec( jdedate ,6,0)) ,5,0,':'),3,0,':') )

但我建议

    timestamp_format( digits(dec( jdedate ,6,0)) ,'HH24:MI:SS')

【讨论】:

您可能不需要内部dec(),因为您的日期已经是数字(6,0)。【参考方案2】:

看看TIMESTAMP_FORMAT函数:

SELECT TIME(TIMESTAMP_FORMAT('130313', 'HH24MISS'))
FROM SYSIBM.SYSDUMMY1

【讨论】:

以上是关于将 JDE 日期格式转换为 DB2的主要内容,如果未能解决你的问题,请参考以下文章