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

datetime转carchar 问题
字段是 datetime 类型的  
数据表中的格式是2012-12-07 15:56:16.000

select CAST(ab as varchar(50)) from databale1
查询之后就变成12 6 2012 3:56PM了  怎么回事?
如何转换之后成2012-12-07 15:56:16
------最佳解决方案--------------------


select convert(varchar(50),ab,121) from databale1
------其他解决方案--------------------
select convert(varchar(50),ab,120) from databale1
------其他解决方案--------------------
select left(TransDateTime,4)
+'-'+substring(TransDateTime,5,2)
+'-'+substring(TransDateTime,7,2)
+' '+substring(TransDateTime,9,2)
+':'+substring(TransDateTime,11,2)
+':'+substring(TransDateTime,13,2)

------其他解决方案--------------------


锋芒必争
 


sql日期格式转换


select CONVERT(varchar, getdate(), 120 )
 2004-09-12 11:06:08
 
select replace(replace(replace(CONVERT(varchar, getdate(), 120 ),'-',''),' ',''),':','')
 20040912110608
 
select COUNVRT(varchar(12) , getdate(), 23 )
 2008-04-01
 
select CONVERT(varchar(12) , getdate(), 111 )
 2004/09/12
 
select CONVERT(varchar(12) , getdate(), 112 )
 20040912
 
select CONVERT(varchar(12) , getdate(), 102 )
 2004.09.12
 
其它不常用的日期格式转换方法:
 
select CONVERT(varchar(12) , getdate(), 101 )
 09/12/2004
 
select CONVERT(varchar(12) , getdate(), 103 )
 12/09/2004
 
select CONVERT(varchar(12) , getdate(), 104 )
 12.09.2004
 
select CONVERT(varchar(12) , getdate(), 105 )
 12-09-2004
 
select CONVERT(varchar(12) , getdate(), 106 )
 12 09 2004
 
select CONVERT(varchar(12) , getdate(), 107 )
 09 12, 2004
 
select CONVERT(varchar(12) , getdate(), 108 )
 11:06:08
 
select CONVERT(varchar(12) , getdate(), 109 )
 09 12 2004 1
 
select CONVERT(varchar(12) , getdate(), 110 )
 09-12-2004
 
select CONVERT(varchar(12) , getdate(), 113 )
 12 09 2004 1
 
select CONVERT(varchar(12) , getdate(), 114 )
 11:06:08.177