我有一个数据库表,它的ETL过程和内容我无法更改,其中的nvarchar
列主要由日期字符串和null组成。然而,偶尔也会出现"N/A"或"不接受"的情况。
有没有一种方法可以只获取有效日期字符串的值?
输入:
2019-01-01
N/A
null
2019-03-04
输出
2019-01-01
2019-03-04
一种简单的方法使用try_cast()
或try_convert()
:
select t.*
from t
where try_cast(datecol as date) is not null;