【发布时间】:2019-07-08 11:22:43
【问题描述】:
我有一个数据集,其中有一列 lastModified 的字符串类型,格式为“yyyy-MM-ddThh:mm:ss.SSS+0000”(示例数据:2018-08-17T19:58:46.000+0000)。
我必须添加一个时间戳类型的新列 lastModif_mapped,方法是将 lastModified 的值转换为格式“yyyy-MM-dd hh:mm:ss.SSS强>”。
我尝试了下面的代码,但新列正在获取值 null:
Dataset<Row> filtered = null;
filtered = ds1.select(ds1.col("id"),ds1.col("lastmodified"))
.withColumn("lastModif_mapped", functions.unix_timestamp(ds1.col("lastmodified"), "yyyy-MM-dd HH:mm:ss.SSS").cast("timestamp")).alias("lastModif_mapped");
我哪里错了?
【问题讨论】:
标签: apache-spark apache-spark-sql timestamp apache-spark-dataset