我在SQL Server数据库中有一个表 它包含类似 当前为数据类型 我可以如下清理列。所有不喜欢日期的人都将转换为 我想使用 我该如何实现? 答案 0 :(得分:3) 使用 如果您不担心日期过长,可以这样做: 这会将所有非日期设置为dbo.mytbl
,其中列sale_date
杂乱无章。None
,空字符串,not available
,2016
等的内容,而不是类似于日期的格式2019-12-05
。 nvarchar(max)
。NULL
SELECT
CASE
WHEN ISDATE(sale_date) = 1
THEN CONVERT(DATE, sale_date)
ELSE NULL
END AS sale_date
FROM dbo.mytbl
sale_date
更新表,清理和修改数据库中的alter table
列。 ALTER TABLE dbo.mytbl
ALTER COLUMN ????????????;
1 个答案:
try_convert()
!update mytbl
set sale_date = try_convert(date, sale_date);
NULL
。然后,您可以放心地这样做:alter table mytbl alter column sale_date date;