首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > IBM DB2 >

DB2 数值-日期解决方案

2012-02-11 
DB2 数值-日期一个数值型的字段如何转换成一个日期型的呢,望高手指教。请举例说明。[解决办法]你这个数值代

DB2 数值-日期
一个数值型的字段如何转换成一个日期型的呢,望高手指教。
 请举例说明。

[解决办法]
你这个数值代表的是什么意思?
mysql是指1900还是1097开始的毫秒数 
db2似乎不是这么处理的
[解决办法]
你的意思是 某个日期-某个固定的值 得到一个 日期?
这个可以这么做
某个日期- n days 结果是日期
某个日期- n months 结果也是日期
某个日期 - n years 结果还是日期
反正日期加减整数个 日 月 年 结果都是日期



[解决办法]
看这个帖子

http://www.ibm.com/developerworks/cn/data/library/techarticles/0211yip/0211yip3.html
[解决办法]
WHERE CLNDR_DT_ID=(CURRENT_DATE - DAY(CURRENT_DATE) DAY)

首先,这种情况建议你把日期转换成INTEGER,SQL执行效率要高一些。
其次,看你的CLNDR_DT_ID是什么格式的,比如YYYYMMDD,根据你的意图应该是想取某月1号,那么可以这样:
YEAR(CURRENT_DATE)*10000+MONTH(CURRENT_DATE)*100+DAY(CURRENT_DATE)
其他格式类似。

[解决办法]
当然你也可以自己写一个函数,这样不但可以定制转换成什么格式,以后用到地方多的话可以直接调用,也是个很好的选择。
[解决办法]
db2 只能把'YYYY-MM-DD'转为日期。数值型的需要转为char在变为此格式转换。关键还看你的数据值型存储的是不是类似yyyymmdd的值
[解决办法]
将字符串转换成时间: 
TIMESTAMP (’2002-10-20-12.00.00.000000′) 
TIMESTAMP (’2002-10-20 12:00:00′) 
DATE (’2002-10-20′) 
DATE (’10/20/2002′) 
TIME (’12:00:00′) 
TIME (’12.00.00′) 

热点排行