SQL 服务器从自定义格式的字符串中获取日期时间

SQL SERVER get datetime from a custom formatted string

我有一个 table,其中包含一些存储为文本的 DateTime 值,我想遍历它们并为每个值获取 DateTime 对象。

下面是一些我需要转换的数据示例。

我尝试使用 SQL 内置函数(例如转换、转换...)但没有用。

删除工作日的名称和连字符,它应该可以工作:

WITH cte
AS
(
SELECT DATENAME(weekday,datefromparts(2020,1,dow.dow)) as WeekDay
FROM (values (1),(2),(3),(4),(5),(6),(7) ) dow(dow)
)

SELECT TRY_CAST(REPLACE(REPLACE(t.dateInTxt,'-',''),cte.WeekDay,'') as datetime),t.dateInTxt
FROM mytable t
JOIN cte
ON t.dateInTxt LIKE '%'+cte.WeekDay +'%'