将 'Nov 23, 2019, 1:44 PM' 转换为类似 2019-11-23 13:44:25.000 格式的日期时间的语法?
Syntax to convert 'Nov 23, 2019, 1:44 PM' to a datetime like 2019-11-23 13:44:25.000 format?
我一直在寻找一种解决方案来转换我的一个数据字段,该字段位于 'Nov 23, 2019, 1:44 PM' 中并且数据类型为 nvarchar
。当我使用 convert(datetime,[Exam Scheduled Date/Tm],121)
时,出现
错误
The conversion of a nvarchar data type to a datetime data type resulted in an out-of-range value.
尝试convert(datetime,REPLACE([Exam Scheduled Date/Tm],',',' '),100)
原来format "107"是宽容有没有逗号的,所以先把所有逗号替换掉再用"107"格式转换就可以了。
select convert(datetime, replace([Exam Scheduled Date/Tm],',',''),107)
from (
select 'Nov 23, 2019, 01:44 PM' [Exam Scheduled Date/Tm]
) X
TRY_PARSE 函数似乎有效:
DECLARE @DateString nvarchar(50) = 'Nov 23, 2019, 1:44 PM';
SELECT TRY_PARSE(@DateString AS datetime USING 'en-us')
我一直在寻找一种解决方案来转换我的一个数据字段,该字段位于 'Nov 23, 2019, 1:44 PM' 中并且数据类型为 nvarchar
。当我使用 convert(datetime,[Exam Scheduled Date/Tm],121)
时,出现
The conversion of a nvarchar data type to a datetime data type resulted in an out-of-range value.
尝试convert(datetime,REPLACE([Exam Scheduled Date/Tm],',',' '),100)
原来format "107"是宽容有没有逗号的,所以先把所有逗号替换掉再用"107"格式转换就可以了。
select convert(datetime, replace([Exam Scheduled Date/Tm],',',''),107)
from (
select 'Nov 23, 2019, 01:44 PM' [Exam Scheduled Date/Tm]
) X
TRY_PARSE 函数似乎有效:
DECLARE @DateString nvarchar(50) = 'Nov 23, 2019, 1:44 PM';
SELECT TRY_PARSE(@DateString AS datetime USING 'en-us')