【发布时间】:2019-12-10 02:47:05
【问题描述】:
我有一个包含字符串列的配置单元表:这是一个示例:
| DT |
|-------------------------------|
| 2019-05-07 00:03:53.837000000 |
当我尝试在 Spark-Scala DF 中导入表并将字符串转换为时间戳时,我只有空值:
val df = spark.sql(s"""select to_timestamp(dt_maj, 'yyyy-MM-dd HH:mm:ss.SSS') from ${use_database}.pz_send_demande_diffusion""").show()
| DT |
|------|
| null |
在做
val df = spark.sql(s"""select dt from ${use_database}.pz_send_demande_diffusion""").show()
给出了很好的结果(带有字符串值的列)。所以 Spark 正在正常导入 te 列。
我也试过了:
val df = spark.sql(s"""select to_timestamp('2005-05-04 11:12:54.297', 'yyyy-MM-dd HH:mm:ss.SSS') from ${use_database}.pz_send_demande_diffusion""").show()
它奏效了!它返回一个 TIMESTAMPs 列。
有什么问题?
【问题讨论】:
标签: scala dataframe apache-spark time hive