【发布时间】:2021-02-28 21:28:00
【问题描述】:
我想在 (scala) spark 数据帧中将时间戳转换为人类可读的字符串并执行以下操作:
df.select(
$"ts",
to_date(from_unixtime($"ts"), "yyyy-MM-dd").as("date"),
to_date(from_unixtime($"ts"), "yyyy-MM-dd-hh").as("date2")
).limit(10)
.show(false)
并获得以下信息:
+----------+----------+-----+
|ts |date |date2|
+----------+----------+-----+
|1605628105|2020-11-17|null |
|1605628105|2020-11-17|null |
|1605628105|2020-11-17|null |
|1605628105|2020-11-17|null |
|1605628105|2020-11-17|null |
|1605628105|2020-11-17|null |
|1605628105|2020-11-17|null |
|1605628105|2020-11-17|null |
|1605628105|2020-11-17|null |
|1605628105|2020-11-17|null |
+----------+----------+-----+
为什么我不能从时间戳中提取小时?为什么会产生 null?
【问题讨论】:
标签: scala apache-spark apache-spark-sql apache-spark-dataset