db2日期時間轉換為字串

guyuanli發表於2012-09-14
db2沒有oracle那樣方便,不過可以寫儲存過程來實現:[@more@]create function ts_fmt(TS timestamp, fmt varchar(20))
returns varchar(50)
return
with tmp (dd,mm,yyyy,hh,mi,ss,nnnnnn) as
(
select
substr( digits (day(TS)),9),
substr( digits (month(TS)),9) ,
rtrim(char(year(TS))) ,
substr( digits (hour(TS)),9),
substr( digits (minute(TS)),9),
substr( digits (second(TS)),9),
rtrim(char(microsecond(TS)))
from sysibm.sysdummy1
)
select
case fmt
when 'yyyymmdd'
then yyyy || mm || dd
when 'yyyyMMddhhmmss'
then yyyy || mm || dd || hh || mi ||ss
when 'mm/dd/yyyy'
then mm || '/' || dd || '/' || yyyy
when 'yyyy/dd/mm hh:mi:ss'
then yyyy || '/' || mm || '/' || dd || ' ' ||
hh || ':' || mi || ':' || ss
when 'nnnnnn'
then nnnnnn
else
'date format ' || coalesce(fmt,' ') ||
' not recognized.'
end
from tmp

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7490392/viewspace-1059426/,如需轉載,請註明出處,否則將追究法律責任。

相關文章