我遇到了日期问题。问题是,即使格式不同,ISDATE 也会给我有效的日期。但是,我想做的是 INSERT NULL 是任何未格式化的日期字段,例如:8/28/2013 或 08/28/2013
这是供国际使用的。并且仅供美国使用。这意味着:08/08/2013 将表示 2011 年 8 月 8 日。并且将投射为 2011-08-08。
我不确定如何检查格式。我可以做整个 CASE WHEN。
我试着这样玩:
DECLARE @d DATETIME = '10/01/2011';
SELECT CASE WHEN @d != FORMAT ( @d, 'yyyy/MM/dd', 'en-US' ) THEN @d ELSE NULL END
当前列中的日期是这样的格式。8/28/2013 或 08/28/2013 如果格式正确,我会进行演员表。
谢谢!