在DB2

时间:2018-03-07 12:54:38

标签: sql db2

我的表中有一列,日期值为Decimal,如20180715,为15-07-2018。我想将其转换为MMDDYYYY格式。怎么做?意思是,我有一个十进制值20180715,并希望将其转换为07152018.

2 个答案:

答案 0 :(得分:1)

尝试这样的事情:

select 
VARCHAR_FORMAT( TIMESTAMP_FORMAT(cast(yourcolumn as varchar(8)), 'YYYYMMDD') , 'MMDDYYYY') 
from yourtable

但是你想要一个真正的约会对象:

select 
DATE( TIMESTAMP_FORMAT(cast(yourcolumn as varchar(8)), 'YYYYMMDD')) 
from yourtable

答案 1 :(得分:0)

试试这个查询的日期

select 
date(timestamp_format(char(yourcolumn+19000000), 'YYYYMMDD')) 
from yourtable

找时间

select 
cast( substr( right( '00' || yourcolumn, 6) ,1,2) || ':' || substr( right( '00' || yourcolumn, 6) ,3,2) || ':' || substr( right( '00' || yourcolumn, 6) ,5,2) as time) 
from yourtable