SQL - 丢失时间部分的datetime

时间:2017-03-24 16:28:07

标签: sql sql-server date datetime

我有以下代码将nvarchar转换为datetime。

SELECT TRY_PARSE(CONVERT(NVARCHAR(255), LEFT([SubmitDate], 10), 103) AS DATETIME USING 'en-gb') AS [SubmitDate]
FROM [ITSM_INCIDENT]

当我进行转换时,我会失去日期时间的一部分

e.g。

'2017-01-01 13:23:01.000'进入'2017-01-01 00:00:00.000'

我怎么写这个所以时间不是全部都是0?

1 个答案:

答案 0 :(得分:1)

您正在使用left()仅获取变量的日期部分(前10个)。

请尝试使用此代码:

SELECT TRY_PARSE(CONVERT(NVARCHAR(255), LEFT([SubmitDate], 23), 103) AS DATETIME USING 'en-gb') AS [SubmitDate]
FROM [ITSM_INCIDENT]