在scala中将字符串日期(不带分隔符)转换为日期格式
Posted
技术标签:
【中文标题】在scala中将字符串日期(不带分隔符)转换为日期格式【英文标题】:converting string date (without separator) to date format in scala 【发布时间】:2019-03-29 22:39:17 【问题描述】:我在转换带有日期的列时遇到了一些问题。我的日期列看起来像这样“20032016”“ddMMyyyy”。当我转换它时,我只得到空值。 我使用了以下代码:
df.withColumn("reporting_date",date_format(to_date(col("reporting_date"), "ddMMyyyy"), "yyyy-MM-dd")).show
有人可以帮助我吗?
【问题讨论】:
【参考方案1】:您的代码示例对我有用:
scala> val df = Seq("20032016").toDF
df: org.apache.spark.sql.DataFrame = [value: string]
scala> df.withColumn("reporting_date",date_format(to_date(col("value"), "ddMMyyyy"), "yyyy-MM-dd")).show
+--------+--------------+
| value|reporting_date|
+--------+--------------+
|20032016| 2016-03-20|
+--------+--------------+
【讨论】:
以上是关于在scala中将字符串日期(不带分隔符)转换为日期格式的主要内容,如果未能解决你的问题,请参考以下文章
Scala - 如何在 Spark SQL 查询中将日期字符串转换为时间戳?
在scala数据框中将日期格式从MM / dd / yyyy转换为yyyyMMdd [重复]
如何在EXCEL中将字符转成日期 如19970828转成1997-08-28