我有一个数据集,并且特定列“Last_DCR_Date”采用“varchar”数据类型格式,我的目标是将其转换为 DATE 格式,但到目前为止我还无法做到。
“Last_DCR_Date”列中的数据示例如下所示:“24-11-2023”,采用 nvarchar 格式。
我想将其转换为“2023-11-24”。 我将非常感谢您的帮助
我尝试使用以下方法创建新的(“日”,“月”,“年”)列:
ALTER TABLE mytable
ADD day AS SUBSTRING (Last_DCR_Date, 1, 2)
......剩下的两个依此类推。
但是完成此操作后,我尝试通过连接 3 列来创建一个新列,例如
ALTER TABLE mytable
ADD new_DCR_Date AS CONCAT_WS('/', day, month, year)
但是 SQL Server 说我无法使用计算列执行此操作
您可以将列更改为数据类型
Date
并选择具有适当格式的数据。这是示例代码:
ALTER TABLE SampleTable
ADD New_DCR_Date DATE; -- it will automatically convert if data has same format
UPDATE SampleTable
SET New_DCR_Date = CONVERT(DATE, Last_DCR_Date, 105); --yyyy-MM-dd
这是小提琴链接.