Spark sql - Pyspark 字符串到日期的转换

1 apache-spark apache-spark-sql pyspark pyspark-sql

我有一列包含20180501字符串格式的数据,我想将其转换为日期格式,尝试使用

to_date(cast(unix_timestamp('20180501', 'YYYYMMDD') as timestamp))'
Run Code Online (Sandbox Code Playgroud)

但仍然没有奏效。我将 Spark SQL 与数据帧一起使用

小智 6

格式应该是yyyyMMdd

spark.sql("SELECT to_date(cast(unix_timestamp('20180501', 'yyyyMMdd') as timestamp))").show()
# +------------------------------------------------------------------+
# |to_date(CAST(unix_timestamp('20180501', 'yyyyMMdd') AS TIMESTAMP))|
# +------------------------------------------------------------------+
# |                                                        2018-05-01|
# +------------------------------------------------------------------+
Run Code Online (Sandbox Code Playgroud)