spark.sql("select CASE WHEN ((from_unixtime(unix_timestamp(dt,'yyyyMMdd'),'yyyyMMdd') == dt) or (from_unixtime(unix_timestamp(dt,'MMddyyyy'),'MMddyyyy') == dt)) then dt else '' end as dt, case WHEN ((from_unixtime(unix_timestamp(dt,'yyyyMMdd'),'yyyyMMdd') == dt) or (from_unixtime(unix_timestamp(dt,'MMddyyyy'),'MMddyyyy') == dt)) then 'Y' else 'dt: should be present in "yyyyMMdd" or "MMddyyyy" format' end as dt_flag from input").show(false)
在上面的代码中,我编写了接受两种格式的查询yyyyMMdd和MMddyyyy
在这种情况下,应该接受多个分隔符,如没有分隔符、句号、逗号、斜杠、破折号日期类型
我不知道如何添加这些,请帮助我这个!提前感谢
您可以根据您接受的Date Formats
创建多个列
完成后,您可以使用coalesce将它们组合在一起
这里展示了该方法的一个示例