SQL Server将字符串强制转换为日期时间

SQL Server将字符串强制转换为日期时间,sql,tsql,sql-server-2008,datetime,Sql,Tsql,Sql Server 2008,Datetime,我有一个ddMMyy格式的字符串010910,我必须将该字符串转换为SQL Server日期时间数据类型,如2010-09-01 00:00:00.000 如何做到这一点?使用子字符串将位拉出,然后通过连接将它们重新组合在一起。类似的方法如何 DECLARE @String VARCHAR(6) SELECT @String = '010910' SELECT CONVERT(DATETIME,LEFT(@String,2) + '/' + SUBSTRING(@String, 3, 2)

我有一个
ddMMyy
格式的字符串
010910
,我必须将该字符串转换为SQL Server日期时间数据类型,如
2010-09-01 00:00:00.000


如何做到这一点?

使用
子字符串将位拉出,然后通过连接将它们重新组合在一起。

类似的方法如何

DECLARE @String VARCHAR(6)
SELECT  @String = '010910'

SELECT  CONVERT(DATETIME,LEFT(@String,2) + '/' + SUBSTRING(@String, 3, 2) + '/' + RIGHT(@String,2),3)

查看和

Google“sql server将字符串转换为日期时间”。第一个答案是您需要的。@Pondlife-我不认为我正在使用的格式有一个可选答案。这是正确的,但希望很明显,如果您知道支持的格式,你需要做的唯一一件事就是将你自己的格式转换成一个受支持的格式。你的格式工作得很好,但我认为t-clausen.dk的答案更精确和简短。
SELECT CAST(right(s, 2) + left(s,4) as datetime)
FROM (SELECT '010910' s) a