当前位置: 代码迷 >> Sql Server >> convert将字符串转换为日期型,如何不带后面的时分秒
  详细解决方案

convert将字符串转换为日期型,如何不带后面的时分秒

热度:104   发布时间:2016-04-24 09:06:06.0
convert将字符串转换为日期型,怎么不带后面的时分秒?
select  convert(datetime,SUBSTRING(订购日期,1,8))   from   [dbo].[order]


源数据是一列20140708141006这样的数据,按上述代码转换后为2014-07-08 00:00:00


convert将字符串转换为日期型,怎么不带后面的时分秒?


求教。
------解决思路----------------------
是DATETIME 总会带时分秒的

我这没有SQL2008
2008+有 DATE 类似,你可以试一下
------解决思路----------------------
SQL版本??
select convert(date,SUBSTRING('20140708141006',1,8)) 

------解决思路----------------------
引用:
select  convert(datetime,SUBSTRING(订购日期,1,8))   from   [dbo].[order]


源数据是一列20140708141006这样的数据,按上述代码转换后为2014-07-08 00:00:00


convert将字符串转换为日期型,怎么不带后面的时分秒?


求教。


select  convert(date,SUBSTRING(订购日期,1,8))   from   [dbo].[order]

datetime本身就是有时分秒的
如果你使用的SQL SERVER版本有date类型,可以通过date去掉时分秒

select cast(substring('20140708141006',1,8) as date)


否则你就拼接成字符串类型,代码里面去处理吧

select substring('20140708141006',1,4)+'-'+substring('20140708141006',5,2)+'-'+substring('20140708141006',7,2)
  相关解决方案