Vertica DB有一个名为created_ts
的列,其中包含2016年3月15日,2016年3月15日,2016/03/15和2016年3月15日的记录。我想过滤不符合DD / MM / yyyy格式的记录。
答案 0 :(得分:0)
这应该识别大多数无效DD / MM / YYYY日期的字符串,但是如果你想要清除4月31日(或非2月29日)的无效日期,你必须增加一点复杂性。 -leap - 年)。
select * from my_table
where not (translate(created_ts,'0123456789','9999999999')='99/99/9999'
and split_part(created_ts,'/',1) between '01' and '31'
and split_part(created_ts,'/',2) between '01' and '12')