我在这里有一个字符串,需要将其转换为日期,但问题是它可能采用'DD / MM / YYYY'或'YYYY-MM-DD'格式。
我已经尝试过convert,它仅适用于两种格式之一,但不能同时适用于两种格式:
declare @string nvarchar(255) = '2019-05-21'
declare @table table (date date)
insert into @table
select convert(date, @string, 111) as date
select * from @table
declare @string nvarchar(255) = '21/05/2019'
declare @table table (date date)
insert into @table
select convert(date, @string, 103) as date
select * from @table
Run Code Online (Sandbox Code Playgroud)
以上两种解决方案均导致错误,原因是我使用了其他格式。
有什么方法可以将字符串转换为日期,而不管其采用哪种格式?