我在SQL Server中有一个数据库。我没有授权更改任何表格,但我可以创建视图。如何将varchar转换为datetime并在TSQL中跳过无效的datetime
我有三个varchar
列,其中的格式为YYYYMMDD
。我想创建一个日期从varchar
转换为datetime
的视图。
现在可以是这种情况,而不是在这个列中的日期,我可以有空的空间,NULL
或字符-
。
我们来看看closedDate
这一列。如果我使用CONVERT(datetime, closedDate, 112)
有效日期正确转换,
当有空白的日期转换为
1900-01-01
,NULL保持,
的
-
导致转换错误:
The conversion of a varchar data type to a datetime data type resulted in an out-of-range value.
如何告诉函数来转换日期只是如果它有有效的日期形式,并在所有其他情况下保留NULL或更好的空日期(或空格)?
完美的感谢!如果不是NULL,我想获得空的日期/空间? – CiccioMiami
在日期时间字段中不能有空白空间。 – HLGEM
感谢作品的魅力! –