是否可以检查日期(yyymmdd)在 spark SQL 中是否有效? 我尝试了以下方法:
TO_DATE(CAST(UNIX_TIMESTAMP(CAST(UNIX_TIMESTAMP(colname, 'yyyymmdd') AS TIMESTAMP))) IS NOT NULL
谢谢, 巴拉特
最佳答案
您将需要使用类似于 Natty 的数据解析器(取决于您使用的语言)natty.joestelmach.com
您可以创建一个使用 Natty(或其他解析器)解析和验证日期的函数。然后注册您可以在 Spark SQL 中使用的 udf。
val isValidDate: String => Boolean =//your validation logic here
sqlContext.registerFunction("dateValidate", isValidDate)
sqlContext.sql("SELECT * FROM DF WHERE dateValidate(colname)")
https://stackoverflow.com/questions/43239420/