日期:2014-05-17  浏览次数:20492 次

求个日期UPDATE 格式
同表,有T1 DATETIME , T2 VARCHAR两个列
T1 : 2011-12-19 05:25:22.000
 
可以把update表,让T2等于2011121905:25 么?
T2的日 和 时之间没有空格

------解决方案--------------------
SQL code
update tb set t2=convert(varchar(10),t1,112)+convert(varchar(5),t1,108)

------解决方案--------------------
SQL code

declare @t1 table
([datetime] datetime,[t2] varchar(3))

insert @t1
select '2011-12-19 05:25:22.000','aaa'

select * from @T1
/*
datetime                t2
----------------------- ----
2011-12-19 05:25:22.000 aaa
*/

select 
convert(varchar(10),[datetime],120)+convert(varchar(5),[datetime],108) as [datetime]
from @T1
/*
datetime
---------------
2011-12-1905:25
*/

--更新没有任何意思,除非你这个字段是varchar类型的,如果是datatime类型的会报错的。

update @T1
set [datetime]=convert(varchar(10),[datetime],120)+convert(varchar(5),[datetime],108)
/*
Conversion failed when converting datetime from character string.
*/


--所以不需要更新,你在得到数据的时候select 的时候处理成你想要的格式即可。