火花的Java:如何转换格式“YYYY-MM-DDTHH:MM:SS.SSS + 0000”的数据集

2019-11-05 11:31发布

我有一列的数据集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");

我要去哪里错了?

文章来源: Spark-Java:How to convert Dataset string column of format “yyyy-MM-ddThh:mm:ss.SSS+0000” to timestamp with a format?