如何在SQL中将2个Varchar字符串转换为DateTime

时间:2018-06-20 12:25:36

标签: sql sql-server tsql

我有两个vchar字段,分别以文本/字符串形式包含日期和时间。

即 日期(YYYYmmdd):20170402 Ftime(HHmmss):103101

如何将它们串联起来并转换为Datetime?

可以转换日期,但是我遇到的问题是添加时间。

先谢谢您

3 个答案:

答案 0 :(得分:0)

您可以使用stuff() varchar 时间格式转换为 datetime 格式:

select Fdate + cast(stuff(stuff(Ftime, 3, 0, ':'), 6, 0, ':') as datetime) as datetime

答案 1 :(得分:0)

您可以使用此:

yyyy-MM-dd hh:mm:ss

输出:

{{1}}

答案 2 :(得分:0)

SELECT DATETIMEFROMPARTS (  substring('20170402',1,4) , substring('20170402',5,2), substring('20170402',7,2), substring('103101',1,2), substring('103101',3,2), substring('103101',5,2) ,  substring('103101',7,2) ) 

输出

2017-04-02 10:31:01.000