【发布时间】:2016-07-06 20:49:28
【问题描述】:
(标题已编辑) 大家下午好!
使用 IBM i 7.1 版并希望计算查询中两个日期之间的差异。由于没有什么是容易的,一个日期是 CYYMMDD 格式,另一个 (curdate()) 是 YYYY-MM-DD。我尝试将我的 CYYMMDD 格式的日期(字段名称 APENGD)转换为 varchar(10),然后将其作为日期包装在 CAST 中(因为不能将小数转换为日期):
Cast(Cast(APENGD + 19000000 As varchar(10)) As date) As math
但无论出于何种原因,我只看到++++++++++++++ 的结果。我能够测试几个不同的版本,发现我不能在任何地方使用 DATE...有人可以提出替代方案吗??
提前致谢!
马特
【问题讨论】:
-
您打算如何计算 DB2 上的差异?我知道没有任何好的内置函数,
TIMESTAMPDIFFis almost useless.(因为前面的日期数学)。此外,使用列之间的差异通常会导致索引被忽略(因为它需要每行评估信息) - 您打算如何处理差异?
标签: sql date db2 ibm-midrange db2-400