SQL:如何将这些日期字符串转换为日期类型

时间:2017-08-12 20:30:48

标签: sql sql-server tsql

如何将下面的varchar数据转换为带有SQL语句的日期数据类型?

Oct 25, 2004
May 02, 2006
Nov 19, 2002

1 个答案:

答案 0 :(得分:2)

如果是2012+,您可以使用Try_Convert()。这将为任何转换失败返回NULL,而不是抛出错误。

示例

Declare @YourTable Table ([SomeCol] varchar(50))
Insert Into @YourTable Values 
 ('Oct 25, 2004')
,('May 02, 2006')
,('Nov 19, 2002')
,('Not a Date Format')

Select * 
      ,AsDate = try_convert(date,SomeCol)
 from @YourTable

<强>返回

SomeCol             AsDate
Oct 25, 2004        2004-10-25
May 02, 2006        2006-05-02
Nov 19, 2002        2002-11-19
Not a Date Format   NULL           -- << Notice Returned NULL