数据库中字段是字符型,值格式为yyyyMMddHHmmss,要将日期减少40秒,下面是具体的sql语句

第一步、将字符型转为日期型

select convert(datetime,substring(left(MMS_SendTime,8)+' ' + substring(MMS_SendTime,9,2)+':' + substring(MMS_SendTime,11,2)+':' + substring(MMS_SendTime,13,2),1,17)) from [mms_send]

第二步、日期减少40秒

select dateadd(ss,-41,convert(datetime,substring(left(MMS_SendTime,8)+' ' + substring(MMS_SendTime,9,2)+':' + substring(MMS_SendTime,11,2)+':' + substring(MMS_SendTime,13,2),1,17))) from [mms_send]

第三步、再将日期转换成字符型

update [mms_send] set MMS_SendTime=replace(replace(replace(convert(varchar,dateadd(ss,-41,convert(datetime,substring(left(MMS_SendTime,8)+' ' + substring(MMS_SendTime,9,2)+':' + substring(MMS_SendTime,11,2)+':' + substring(MMS_SendTime,13,2),1,20))),120),'-',''),':',''),' ','')

posted on 2012-09-26 11:08  晓晨  阅读(14709)  评论(0编辑  收藏  举报